Skip to content

Instantly share code, notes, and snippets.

@BigRoy
Last active November 6, 2024 00:15
Show Gist options
  • Save BigRoy/2b806acd6b1bf0110dbac72e99a4d8c6 to your computer and use it in GitHub Desktop.
Save BigRoy/2b806acd6b1bf0110dbac72e99a4d8c6 to your computer and use it in GitHub Desktop.
AYON debug print settings changes
import json
import difflib
import ayon_api
amount = 10
for event_ in ayon_api.get_events(
topics={"settings.changed"},
# Set more filters if needed
# newer_than="isoformat-date",
# users={"admin"}
):
event_id = event_["id"]
event = ayon_api.get(f"events/{event_id}")
print(event.data)
before = event["payload"]["originalValue"]
after = event["payload"]["newValue"]
before = json.dumps(before, indent=4, sort_keys=True)
after = json.dumps(after, indent=4, sort_keys=True)
if before == after:
continue
diff = difflib.unified_diff(
before.splitlines(),
after.splitlines(),
fromfile='before',
tofile='after',
lineterm=''
)
print("{event[description]} by {event[user]} on {event[createdAt]}".format(event=event))
print("\n".join(diff))
amount -= 1
if amount < 0:
break
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment