Logfire: Ongecompliceerde Observatie voor Python Applicaties

In mijn vorige artikel over Pydantic, heb ik je in een van de codevoorbeelden kennis laten maken met Logfire als een observability platform dat is ontworpen om ontwikkelaars inzicht te geven in Python-toepassingen. In dit artikel krijg je een diepgaande kennismaking met Logfire en zijn mogelijkheden die uiteindelijk uw observability-reis van tracing tot debugging tot logging zullen vereenvoudigen.

Logfire is een innovatief observability platform ontwikkeld door de makers van Pydantic, dat is ontworpen om ontwikkelaars krachtige inzichten te bieden in hun Python-toepassingen. Gebouwd op dezelfde principes die Pydantic tot een succes hebben gemaakt, streeft Logfire ernaar om observability gemakkelijk te implementeren en te begrijpen, terwijl het diepgaande inzichten biedt in het gedrag van de toepassing.

Belangrijkste kenmerken

Naadloze integratie

Logfire integreert moeiteloos met bestaande Python-projecten en vereist minimale configuratie. Met slechts een paar regels code kunnen ontwikkelaars waardevolle gegevens verzamelen over de prestaties en het gedrag van hun toepassing.

Pydantic Integratie

Logfire biedt uitzonderlijke integratie met Pydantic-modellen. Dit stelt ontwikkelaars in staat ongekend inzicht te krijgen in gegevensvalidatie en modelgebruik in hun toepassingen.

Automatische Instrumentatie

Logfire kan automatisch populaire bibliotheken en frameworks instrumenteren, waardoor de noodzaak voor handmatig loggen en traceren wordt verminderd. Deze functie bespaart tijd en zorgt voor een uitgebreide dekking van het gedrag van de toepassing.

OpenTelemetry Compatibel

Gebouwd op OpenTelemetry, zorgt Logfire voor compatibiliteit met de industrienormen en biedt flexibele opties voor gegevensexport.

Vereisten

  1. Log in op Logfire.
  2. Volg de instructies om uw account aan te maken. Dit account zal u helpen bij het organiseren van uw projecten.
  3. Vanuit uw organisatie, klik op Nieuw project om uw eerste project aan te maken.


Aan de slag

Om te beginnen met het gebruik van Logfire, volg deze eenvoudige stappen:

Stap 1. Installeer het Logfire pakket met de onderstaande opdracht. Als u Jupyter Notebook gebruikt, voer !pip install logfire uit.

Shell

 

Installing LogFire

Stap 2. Authenticeer met de Logfire-service. Dit zal een browser openen en vragen om inloggegevens voor logfire.

Shell

 

Authentication with LogFire

3. Configureer Logfire in uw toepassing. Zodra het pakket is geïnstalleerd, moet u de onderstaande opdrachten gebruiken om logfire te configureren.

Python

 

U kunt de stappen volgen als onderdeel van uw projectopstelling:

Project setup

Basisgebruik

Een span in Logfire is een essentieel bouwsteen van een spoor. U kunt een span definiëren met logfire.span. In het onderstaande voorbeeld stelt de buitenste span het onderwerp in – de verjaardag van de gebruiker. De gebruiker zal worden gevraagd naar zijn verjaardag en deze wordt vastgelegd via de terminal of opdrachtprompt.

Hier is een eenvoudig voorbeeld van hoe u Logfire kunt gebruiken voor handmatige tracing:

Python

 

Logfire project showing spans

Als u de DEBUG-uitvoer niet ziet, klikt u op Filter lokale gegevens –> Niveaus –> debug.

Pydantic Integratie

Zoals besproken in mijn vorige artikel, is de kernfunctionaliteit van Pydantic gegevensvalidatie. Het maakt gebruik van Python-type hints om automatisch de structuur en typen van gegevens te valideren. Wanneer u een Pydantic-model definieert, wordt elk veld geannoteerd met het verwachte type. Pydantic zorgt er vervolgens voor dat alle gegevens die aan deze velden zijn toegewezen, voldoen aan de gespecificeerde typen.

De integratie van Logfire met Pydantic is bijzonder krachtig. Hier leest u hoe u het kunt gebruiken om Pydantic modelvalidaties te loggen:

Python

 

Deze configuratie zal automatisch details loggen over alle Pydantic modelvalidaties, waardevolle inzichten biedend in gegevensverwerking binnen uw toepassing.

Framework Integraties

Logfire biedt integraties met populaire Python-frameworks en bibliotheken. Voor het onderstaande Python-codevoorbeeld moet u de OpenAI API-sleutel verstrekken en de vereiste pakketten installeren (FASTAPI, instructeur, OpenAI, enz.).

Voor beginners is FastAPI een Python webframework dat ontwikkelaars helpt bij het maken van applicatie-programmeerinterfaces (API’s). FastAPI staat bekend om zijn schaalbaarheid, gebruiksgemak en hoge prestaties.

OpenAI API helps AI enthusiasts access large language models (LLMs) like GPT-3 via an API request. This helps developers to integrate cutting-edge AI capabilities into their applications, enabling tasks like text generation, image creation, code writing, and more through simple API calls.

Instructor is een Python-pakket dat je helpt om gemakkelijk gestructureerde gegevens zoals JSON uit de output van LLM’s te extraheren.

Hier is een voorbeeld van hoe je Logfire kunt integreren met FastAPI, OpenAI API en instructor:

Python

 

Deze setup biedt uitgebreide logging voor FastAPI-aanvragen, OpenAI API-aanroepen en Pydantic-modelvalidaties, wat een holistisch overzicht van het gedrag van je applicatie biedt.

Logfire showing the quota exceeded error information

Conclusie

Logfire vertegenwoordigt een belangrijke stap voorwaarts in het toegankelijk en krachtig maken van observability voor Python-ontwikkelaars. Logfire stelt ontwikkelaars in staat om hun applicaties beter te begrijpen en te optimaliseren door gebruiksgemak te combineren met diepgaande inzichten. Of je nu aan een klein project of een grootschalige applicatie werkt, Logfire biedt de tools om waardevolle inzichten in het gedrag en de prestaties van je code te verkrijgen.

Geef je liefde door een like te geven en deel het met je Dev-gemeenschap.

Source:
https://dzone.com/articles/logfire-uncomplicated-observability-for-python-app