קבצי היומן הבאים נמצאים בספרייה /obs/diagnostic/:
postgresql.audit: קובץ היומן הזה אוסף יומני ביקורת של סשנים ושל גישה לאובייקטים. כדי לאסוף יומני ביקורת, צריך להפעיל את יומני הביקורת.
postgresql.log: בקובץ היומן הזה נאספים יומני שרת PostgreSQL. היומנים האלה תמיד נאספים ואין צורך להפעיל אותם.
כשקובץ יומן מסתובב, קורה הדבר הבא:
קובץ היומן מועתק לספרייה
/obs/diagnostic/archive/. אם כבר קיים קובץ יומן באותו שם בספרייה, הוא יוחלף.התוכן של קובץ היומן המקורי שסובב נמחק, כך שהקובץ ריק.
פרטי היומן מתחילים להיכתב מיד לקובץ היומן המסתובב הריק. המידע ביומן נכתב בקובץ היומן עד שהקובץ מגיע לגודל או לגיל מסוים, ואז הוא מתחלף שוב. היומנים מתחלפים כדי שלא יהיו גדולים מדי.
כברירת מחדל, הגדרת הרוטציה היא שכל קובץ יומן יסתובב כשהגודל שלו יגיע ל-200 MB. הרוטציה שמוגדרת כברירת מחדל לא כוללת הגדרת גיל.
קבצים שהועברו לארכיון נשמרים למשך 7 ימים. קבצים בארכיון שהם בני יותר מ-7 ימים מוסרים אוטומטית, למעט הקובץ שהועבר לארכיון במהלך הרוטציה האחרונה. לדוגמה, אם log_rotation_age נוצר לפני יותר מ-7 ימים, הקובץ שנארך יגיע לסף של 7 ימים לפני הרוטציה של הקובץ הנוכחי. במקרה כזה, הקובץ הזה בארכיון לא יוסר עד שהרוטציה הבאה תיצור קובץ חדש בארכיון.
כל שם של קובץ יומן מסובב הוא בפורמט הבא: postgresql-%Y-%m-%d_%H%M%S.log.
חותמת הזמן נקבעת בזמן החלפת היומנים והיא מוצגת לפי זמן אוניברסלי מתואם (UTC). לדוגמה, אם מתבצעת רוטציה של היומן ב-20.12.2024 בשעה 13:01:02 (שעון UTC), שם הקובץ בארכיון הוא postgresql-2024-12-20_130102.log.
כל קובץ בארכיון נדחס בנפרד באמצעות פורמט הקובץ Gzip.
הפעלה של יומני ביקורת
כדי שיומני הגישה של סשנים ואובייקטים ייאספו בקובץ postgresql.audit, צריך להפעיל את פרמטר מסד הנתונים pgaudit. כדי להפעיל את pgaudit, מוסיפים את השורה הבאה לקטע parameters בקובץ v1_dbcluster_parameters.yaml בתיקייה Secret:
alloydb.enable_pgaudit: "on"
דוגמה:
apiVersion: v1
kind: Secret
...
apiVersion: alloydbomni.dbadmin.goog/v1
kind: DBCluster
metadata:
name: DB_CLUSTER_NAME
spec:
databaseVersion: "17.5.0"
primarySpec:
...
parameters:
...
alloydb.enable_pgaudit: "on"
מידע נוסף זמין במאמר pgaudit בנושא תוספים נתמכים למסדי נתונים ובמאמר PostgreSQL Auditing Extension.
יומני השרת של PostgreSQL תמיד נאספים בקובץ postgresql.log ואין צורך להפעיל את pgaudit.
הצגת הנתיב של קובץ יומן הביקורת
אפשר להשתמש בפונקציית ה-SQL alloydb_audit_current_logfile כדי להציג את הנתיב של קובץ יומן הביקורת. אם הביקורת מושבתת, התוצאה היא NULL.
SELECT alloydb_audit_current_logfile();
alloydb_audit_current_logfile
----------------------------------------------------
/var/log/pglogs/postgresql-2025-03-28_042024.audit
הגדרת החלפת יומנים
אם רוצים לשלוט יותר טוב בתדירות של רוטציית היומנים, אפשר להגדיר גודל קובץ מקסימלי, משך זמן בין רוטציות של יומנים או את שניהם. המשך הזמן בין החלפות היומנים נקרא גם גיל היומן. אם משתמשים בשתי ההגדרות, כל יומן מסתובב כשהוא מגיע לאחד מספי הערך.
כדי להגדיר את החלפת היומנים, מגדירים פרמטר אחד או את שני הפרמטרים הבאים בקטע parameters של קובץ המניפסט DBCluster:
log_rotation_size: "SIZE_IN_KB"log_rotation_age: "AGE_IN_MINUTES"
כדי להשבית אחת מההגדרות של החלפת יומנים, מגדירים אותה לאפס ("0").
כדי לשמור על הגדרת ברירת המחדל של החלפת יומנים כשהגודל שלהם מגיע ל-200 MB, לא מגדירים אף אחד מהפרמטרים.
דוגמה לגודל ולמשך מקסימליים של החלפת יומנים
במערכי הדוגמאות הבאים, היומנים מוגדרים לסיבוב כשהגודל שלהם מגיע ל-400 MB או כשהזמן בין סיבובי היומנים מגיע ליום אחד, לפי מה שקורה קודם:
apiVersion: alloydbomni.dbadmin.goog/v1
kind: DBCluster
metadata:
name: DB_CLUSTER_NAME
spec:
...
primarySpec:
...
parameters:
log_rotation_size: "400000" # 400 MB
log_rotation_age: "1440" # 24 hours * 60 minutes = 1 day
דוגמה לגודל יומן מקסימלי להחלפת יומנים
בדוגמה הבאה מוגדרת רוטציה של יומנים כשהגודל שלהם מגיע ל-400 MB:
apiVersion: alloydbomni.dbadmin.goog/v1
kind: DBCluster
metadata:
name: DB_CLUSTER_NAME
spec:
...
primarySpec:
...
parameters:
log_rotation_size: "400000" # 400 MB
log_rotation_age: "0" # Set to 0 to disable
דוגמה למשך הזמן של החלפת יומנים
בדוגמה הבאה, היומנים מוגדרים להתחלף כל 24 שעות:
apiVersion: alloydbomni.dbadmin.goog/v1
kind: DBCluster
metadata:
name: DB_CLUSTER_NAME
spec:
...
primarySpec:
...
parameters:
log_rotation_size: "0" # Set to 0 to disable
log_rotation_age: "1440" # 24 hours * 60 minutes = 1 day
המאמרים הבאים
- ניהול ומעקב אחרי AlloyDB Omni
- יצירה של קובצי dump של AlloyDB Omni וניתוח שלהם
- מידע על ניהול זיכרון אוטומטי