Spaces:
Configuration error

hudbot / utils /firebase_logging.py
truevis
u
52d7cf8
raw
history blame
No virus
1.18 kB
import firebase_admin
from firebase_admin import credentials, firestore
import streamlit as st
def init_firebase(project_id):
if not firebase_admin._apps:
firebase_creds = credentials.Certificate({
"type": "service_account",
"project_id": project_id,
"private_key_id": st.secrets["private_key_id"],
"private_key": st.secrets["private_key"].replace('\\n', '\n'),
"client_email": st.secrets["client_email"],
"client_id": st.secrets["client_id"],
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": st.secrets["client_x509_cert_url"]
})
firebase_admin.initialize_app(firebase_creds)
return firestore.client()
def log_to_firestore(project_id, message, level="INFO"):
db = init_firebase(project_id)
doc_ref = db.collection('logs').document()
doc_ref.set({
'message': message,
'level': level,
'timestamp': firestore.SERVER_TIMESTAMP
})