אתם יכולים להציג רשימה של הגרסאות של נושא מסוים במאגר סכימות ספציפי בפרויקט.
במאמר הזה מוסבר איך להציג רשימה של גרסאות נושא באמצעותGoogle Cloud המסוף או Managed Kafka API.
תפקידים והרשאות נדרשים
כדי לקבל את ההרשאות שנדרשות להצגת רשימת הגרסאות של הנושא, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM Managed Kafka Schema Registry Viewer (roles/managedkafka.schemaRegistryViewer) במאגר הסכימות.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
התפקיד המוגדר מראש הזה מכיל את ההרשאות שנדרשות כדי להציג רשימה של גרסאות הנושא. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי להציג רשימה של גרסאות הנושא, נדרשות ההרשאות הבאות:
-
נותנים את ההרשאה הבאה בנושא ההורה:
managedkafka.versions.list
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
הצגת רשימה של גרסאות הסכימה בנושא
כדי להציג ברשימה את כל הגרסאות של נושא במאגר סכימות ספציפי בפרויקט, פועלים לפי השלבים הבאים.
המסוף
נכנסים לדף Schema registries במסוף Google Cloud .
לוחצים על השם של מאגר הסכימות שבו נמצא הנושא.
בקטע Subjects in this schema registry (נושאים במאגר הסכימות הזה), לוחצים על שם הנושא.
בדף פרטי הנושא, גרסאות הסכימה מפורטות בקטע כל הגרסאות.
אופציונלי: כדי לראות את הגדרת הסכימה של גרסה מסוימת, מסמנים את התיבה שלצד מזהה הגרסה. הגדרת הסכימה מוצגת בקטע הגדרה.
אופציונלי: כדי לראות את ההבדלים בין שתי גרסאות סכימה בנושא הזה, מבצעים את השלבים הבאים:
- בקטע כל הגרסאות, בוחרים את הגרסאות שרוצים להשוות ביניהן.
- באזור הגדרה, לוחצים על הצגת ההבדלים.
שתי הגדרות הסכימה מוצגות זו לצד זו, והתוספות, המחיקות והשינויים מודגשים.
REST
הבקשה צריכה להיות מאומתת באמצעות אסימון גישה בכותרת Authorization. כדי לקבל אסימון גישה ל-Application Default Credentials הנוכחיים:
gcloud auth application-default print-access-token.
כדי להציג רשימה של גרסאות הנושא, שולחים בקשת GET אל ה-method projects.locations.schemaRegistries.subjects.versions.list.
GET https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/subjects/SUBJECT_ID/versions
Authorization: Bearer $(gcloud auth application-default print-access-token)
מחליפים את מה שכתוב בשדות הבאים:
- PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
- LOCATION: האזור Google Cloud שבו נמצא מאגר הסכימות.
- REGISTRY_ID: המזהה של מאגר הסכימות.
- SUBJECT_ID: מזהה הנושא.
דוגמה:
GET https://managedkafka.googleapis.com/v1main/projects/test-project/locations/us-central1/schemaRegistries/test_registry/subjects/test_subject/versions
Authorization: Bearer $(gcloud auth application-default print-access-token)
או עם הקשר:
GET https://managedkafka.googleapis.com/v1main/projects/test-project/locations/us-central1/schemaRegistries/test_registry/contexts/test_context/subjects/test_subject/versions
Authorization: Bearer $(gcloud auth application-default print-access-token)
כאשר:
-
test-projectהוא מזהה הפרויקט. Google Cloud -
us-central1הוא האזור שבו נמצא מאגר הסכימות. Google Cloud -
test_registryהוא המזהה של מאגר הסכימות. -
test_contextהוא המזהה של ההקשר. -
test_subjectהוא המזהה של הנושא.
אם הבקשה מצליחה, ה-API מחזיר קוד סטטוס 200 OK. גוף התגובה מכיל מערך JSON של גרסאות הנושא.
זוהי דוגמה לתגובה מוצלחת:
{
"versions": [
{
"name": "projects/test-project/locations/us-central1/schemaRegistries/test_registry/subjects/test_subject/versions/1",
"revisionId": "1a2b3c4d",
"schemaId": "S12345",
"createTime": "2024-07-15T12:00:00Z",
"revisionCreateTime": "2024-07-15T12:00:00Z"
},
{
"name": "projects/test-project/locations/us-central1/schemaRegistries/test_registry/subjects/test_subject/versions/2",
"revisionId": "5e6f7g8h",
"schemaId": "S67890",
"createTime": "2024-07-16T14:30:00Z",
"revisionCreateTime": "2024-07-16T14:30:00Z"
}
]
}
מידע נוסף זמין במאמרי העזרה בנושא השיטה projects.locations.schemaRegistries.subjects.versions.list.