Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App

Ας πούμε ότι θα θέλαμε κάθε μέρα να στέλνουμε με email ένα report από το αποτέλεσμα ενός query σε μία βάση δεδομένων. Αυτή η διαδικασία στον SQL Server γίνεται με τη χρήση του SQL Server Agent και του Database Mail. Στις Azure SQL Databases όμως δεν υπάρχει κανένα από τα δύο.

Στις Azure SQL Databases παρόλα αυτά μπορούμε να κάνουμε schedule jobs με πολλούς τρόπους όπως με χρήση Azure Data Factory, Elastic Database Jobs και Logic Apps.

Με τα Logic Apps μπορούμε να δημιουργήσουμε ένα workflow (ροή εργασιών) που γίνεται trigger από κάποιο event ή schedule.

Στο άρθρο θα δούμε ένα παράδειγμα με τη χρήση Logic App. Θα δημιουργήσουμε ένα task που κάθε μέρα θα αποθηκεύει τα αποτελέσματα ενός query σε ένα CSV και θα το αποστέλει με Gmail (μέσω API).

Το παράδειγμα

Για αρχή συνδεόμαστε στο Azure Portal και ψάχνουμε το service Logic apps.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
1

Επιλέγουμε Add.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
2

Στη συνέχεια επιλέγουμε το Resource Group που θα ανήκει, το όνομα του Logic App και το Region.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
3

Αφού δημιουργηθεί ψάχνουμε λίγο πιο κάτω την επιλογή Blank Logic App.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
4

Στο tab All βρίσκουμε το Schedule.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
5

Στην περίπτωση που θέλουμε αν αποτύχει η εργασία να ξαναπροσπαθήσει μετά από λίγο θα επιλέξουμε Sliding Window, αν θέλουμε σε περίπτωση αποτυχίας να τρέξει την επόμενη φορά που είναι scheduled επιλέγουμε Recurrence.

Εδώ τώρα θα επιλέξουμε Recurrence.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
6

Διαλέγουμε Add new parameter ώστε να προστέσουμε το Start Time και το Time zone.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
7

Στο επόμενο βήμα πάμε πάλι στο tab All και επιλέγουμε SQL Server.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
8

Θα μας εμφανίσει διάφορα Actions, εμείς θέλουμε το Execute stored procedure (V2).

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
9

Μετά θα μας ζητήσει να βάλουμε τα στοιχεία για να συνδεθούμε στη βάση δεδομένων.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
10

Αν πατήσουμε το Create και μας εμφανίσει αυτό το μήνυμα, σημαίνει ότι θα πρέπει να προσθέσουμε την IP του Logic App στα Firewall exceptions της Azure SQL Database.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
11

Για να γίνει αυτό πάμε στον logical Server της βάσης, Firewalls and virtual networks, Client IP address.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
12

Αφού προστεθεί θα δούμε ότι όταν επιλέξουμε το Create θα προχωρήσει.

Μετά επιλέγουμε το Server name και Database name με ότι δημιουργήθηκε πριν.

Διαλέγουμε το Add new parameter ώστε να προσθέσουμε την παράμετρο του query.

Στο query συμπληρώνουμε το query που θα θέλουμε να τρέχουμε κάθε φορά.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
13

Στο επόμενο βήμα θέλουμε τα αποτελέσματα να αποθηκεύονται σε ένα CSV οπότε στο New step ψάχνουμε στο tab All το Data Operations και από εκεί το Action Create CSV table.

Εκεί πατάμε στο from και επιλέγουμε το ResultSets.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
14

Σε αυτό το σημείο θα αναζήτήσουμε στο New step το Gmail, εκεί θα επιλέξουμε το Action Send email (V2).

Θα μας ζητήσει τότε το Gmail με pop-up του API τα στοιχεία του email που θα είναι ο αποστολέας ώστε να δώσουμε πρόσβαση στο Logic App.

Αφού συνδεθούμε και μας οδηγήσει στο Send email (V2) θα πρέπει να πάμε στο Add new parameter και να προσθέσουμε Attachments, Subject και Body. Για να προσθέσουμε το attachment θα πρέπει να πατήσουμε το add dynamic content στο Attachments Content , see more, Output.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
15

Πλέον μπορούμε να δοκιμάσουμε την εφαρμογή επιλέγοντας Run.

(δεν ξεχνάμε να την κάνουμε Save)

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
16

θα δούμε κατευθείαν ήρθε email που περιείχε το attachment από το query της βάσης.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
17

Στο Overview του Logic App μπορούμε να δούμε γενικές πληροφορίες όπως κάθε πότε θα τρέχει και το ιστορικό των εκτελέσεων του.

Πώς μπορούμε να κάνουμε schedule ένα Job σε Azure SQL Database με τη χρήση Logic App
18

Πηγές:

Μοιράσου το

Αφήστε μία απάντηση