Cum să rulezi hook-uri la sfârșitul execuției în dbt
DodaTech
Updated 2025-01-15
1 min read
In this tutorial, you'll learn about Cum să rulezi hook. We cover key concepts, practical examples, and best practices.
Hook-urile on-run-end în dbt execută SQL automat după finalizarea comenzilor dbt run, dbt build sau dbt test. Sunt perfecte pentru curățenie, notificări, granturi post-execuție și audit.
Step-by-Step Fix
1. Adaugă on-run-end în dbt_project.yml
# dbt_project.yml
name: my_project
version: "1.0.0"
on-run-end:
- "GRANT SELECT ON ALL TABLES IN SCHEMA {{ target.schema }} TO role_readonly"
- "INSERT INTO audit.log (command, timestamp) VALUES ('run', CURRENT_TIMESTAMP)"
2. Folosește macro-uri pentru logică complexă
on-run-end:
- "{{ log_completion(target.schema, 'run completed successfully') }}"
3. Verifică execuția hook-ului
dbt run --select my_model
Output așteptat:
15:23:45 1 of 1 OK created sql table model my_model
15:23:46 Running on-run-end hook
15:23:47 Finished running on-run-end hook
4. Rulează hook-uri diferențiate per mediu
on-run-end:
- "{% if target.name == 'prod' %}
GRANT SELECT ON ALL TABLES IN SCHEMA {{ target.schema }} TO prod_readonly
{% endif %}"
Common Mistakes
| Greșeală | Soluție |
|---|---|
| Hook-ul rulează și la eșec | on-run-end rulează indiferent de succesul comenzii |
| Se încearcă actualizarea modelelor | Hook-urile rulează după toate modelele — nu mai pot fi modificate |
| SQL prea complex în YAML | Extrage logica într-un macro pentru lizibilitate |
Prevention Tips
- Folosește on-run-end pentru granturi și permisiuni
- Adaugă notificări sau audit la finalul execuției
- Testează hook-urile în develop înainte de producție
- Documentează acțiunile post-execuție
DodaTech Tools
Doda Browser afișează hook-urile on-run-end în raportul de execuție. DodaZIP arhivează logurile post-execuție. Durga Antivirus Pro verifică granturile aplicate de hook-uri.
FAQ
Construit de dezvoltatorii Doda Browser, DodaZIP și Durga Antivirus Pro. Instrumentele DodaTech se integrează nativ cu dbt pentru productivitate și securitate sporite.
← Previous
Cum să rulezi hook-uri înaintea operațiilor în dbt
Next →
Cum să rulezi hook-uri la începutul execuției în dbt
Built by the developers of DodaTech
Doda Browser, DodaZIP & Durga Antivirus Pro