Connexion directe à une base de données¶
La plate-formeLogfirevous permet de connecter des données et d'exécuter des requêtes SQL en utilisant la syntaxe PostgreSQL.
En faisant cela, vous pouvez connecter des outils existants tels que Grafana, Metabase, Superset ou tout autre outil prenant en charge l'interrogation des sources PostgreSQL ™.
Générer des Credential¶
Pour vous connecter, vous devez d'abord générer des informations d'identification de base de données à partir de la page du projet à l'adresse WEB https://logfire.pydantic.dev/<organization>/<project>/settings/database-credentials
Les informations d'identification générées sont un URI PostgreSQL qui peut être utilisé comme une chaîne de connexion pour les outils compatibles. ceux-ci ne seront affichés qu 'une seule fois par la plate-forme Logfire, alors sauvegardez-les dans un emplacement sûr pour une utilisation future!
Connexion à une base de données¶
Comme mentionné précédemment, vous pouvez utiliser les informations d'identification générées pour vous connecter à la base de données via n'importe quel outil prenant en charge la connectivité PostgreSQL.
Utilisation de pgcli¶
pgcli Est un outil de ligne de commande pour accéder à une base de données PostgreSQL.
En utilisant les informations d'identification générées à l'étape précédente comme paramètre de pgcli, vous pouvez vous connecter directement àLogfire:
$ pgcli postgresql://<user>:<password>@db.logfire.dev:5432/proj_david-test # REDACTED
Version: 4.0.1
Home: http://pgcli.com
proj_david-test> select start_timestamp, message from records limit 10;
+-------------------------------+----------------------------------------+
| start_timestamp | message |
|-------------------------------+----------------------------------------|
| 2024-04-28 10:50:41.681886+00 | action=view-faq size=549 i=0 |
| 2024-04-28 10:50:41.711747+00 | GET /contact/ http send response.body |
| 2024-04-28 10:50:41.665576+00 | GET /contact/ |
| 2024-04-28 10:50:41.711119+00 | GET /contact/ http send response.start |
| 2024-04-28 10:50:41.709458+00 | response 500 |
| 2024-04-28 10:50:38.505343+00 | action=view-cart size=517 i=0 |
| 2024-04-28 10:50:39.446668+00 | action=view-faq size=637 i=2 |
| 2024-04-28 10:50:38.681198+00 | action=view-terms size=216 i=3 |
| 2024-04-28 10:50:39.416706+00 | action=view-product size=380 i=0 |
| 2024-04-28 10:50:38.394237+00 | sub-sub-sub-action=logout |
+-------------------------------+----------------------------------------+
SELECT 10
Time: 0.218s
Utilisation de psycopg¶
psycopg est une bibliothèque Python qui permet de se connecter à une base de données PostgreSQL.
Vous pouvez vous connecter àLogfireen utilisant le certificat généré à l'étape précédente:
import os
import psycopg
POSTGRES_URI = os.getenv('POSTGRES_URI')
with psycopg.connect(POSTGRES_URI) as conn:
cursor = conn.cursor()
cursor.execute('SELECT start_timestamp, message FROM records LIMIT 10')
for start_timestamp, message in cursor.fetchall():
print(f'{start_timestamp}: {message}')
Définissez la variable d'environnement export POSTGRES_URI=... sur l'URI généré à l'étape précédente et exécutez le script avec python main.py:
2024-04-28 10:50:41.681886+00: action=view-faq size=549 i=0
2024-04-28 10:50:41.711747+00: GET /contact/ http send response.body
2024-04-28 10:50:41.665576+00: GET /contact/
2024-04-28 10:50:41.711119+00: GET /contact/ http send response.start
2024-04-28 10:50:41.709458+00: response 500
2024-04-28 10:50:38.505343+00: action=view-cart size=517 i=0
2024-04-28 10:50:39.446668+00: action=view-faq size=637 i=2
2024-04-28 10:50:38.681198+00: action=view-terms size=216 i=3
2024-04-28 10:50:39.416706+00: action=view-product size=380 i=0
2024-04-28 10:50:38.394237+00: sub-sub-sub-action=logout
Avec les fonctionnalités que vous pouvez accéder de manière flexible à PostgreSQL ™, nous sommes impatients de savoir comment vous pouvez utiliserLogfire!: Fire:
本文总阅读量次
