Spaces:
Configuration error
Configuration error
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 | |
}) | |