コード例 #1
0
ファイル: bigquery_usage.py プロジェクト: hsheth2/datahub
 def get_missing_key_entry(cls, entry: AuditLogEntry) -> Optional[str]:
     return (get_first_missing_key(inp_dict=entry.payload,
                                   keys=["metadata", "tableDataRead"])
             or get_first_missing_key(
                 inp_dict=entry.payload,
                 keys=["authenticationInfo", "principalEmail"])
             or get_first_missing_key(inp_dict=entry.payload,
                                      keys=["resourceName"]))
コード例 #2
0
def test_get_missing_key():
    assert get_first_missing_key({}, [""]) == ""
    assert get_first_missing_key({"a": 1}, ["a"]) is None
    assert get_first_missing_key({"a": {"b": 1}}, ["a", "b"]) is None
    assert get_first_missing_key({"a": {"b": 1}}, ["a", "c"]) == "c"
    assert get_first_missing_key({"a": ["b", "c", "d"]}, ["a", "c"]) == "c"
コード例 #3
0
ファイル: bigquery_usage.py プロジェクト: hsheth2/datahub
 def get_missing_key_entry_v2(entry: AuditLogEntry) -> Optional[str]:
     return get_first_missing_key(inp_dict=entry.payload,
                                  keys=["metadata", "jobChange", "job"])
コード例 #4
0
ファイル: bigquery_usage.py プロジェクト: hsheth2/datahub
 def get_missing_key_entry(entry: AuditLogEntry) -> Optional[str]:
     return get_first_missing_key(
         inp_dict=entry.payload,
         keys=["serviceData", "jobCompletedEvent", "job"])