Mengembangkan Fungsi Azure menggunakan Visual Studio Code

Ekstensi Azure Functions untuk Visual Studio Code memungkinkan Anda mengembangkan fungsi secara lokal dan menyebarkannya ke Azure. Jika ini adalah pengalaman pertama Anda dengan Azure Functions, Anda dapat mempelajari selengkapnya di Pengantar Azure Functions.

Ekstensi Azure Functions memberikan keuntungan ini:

  • Edit, bangun, dan jalankan fungsi di komputer pengembangan lokal Anda.
  • Terbitkan proyek Azure Functions Anda langsung ke Azure.
  • Tulis fungsi Anda dalam berbagai bahasa sambil memanfaatkan keuntungan Visual Studio Code.

Anda melihat versi C# dari artikel ini. Pastikan untuk memilih bahasa pemrograman Functions pilihan Anda di awal artikel.

Jika Anda baru menggunakan Functions, Anda mungkin ingin terlebih dahulu menyelesaikan artikel mulai cepat Visual Studio Code.

Anda menampilkan versi Java dari artikel ini. Pastikan untuk memilih bahasa pemrograman Functions pilihan Anda di awal artikel.

Jika Anda baru menggunakan Functions, Anda mungkin ingin terlebih dahulu menyelesaikan artikel mulai cepat Visual Studio Code.

Anda melihat versi JavaScript dari artikel ini. Pastikan untuk memilih bahasa pemrograman Functions pilihan Anda di awal artikel.

Jika Anda baru menggunakan Functions, Anda mungkin ingin terlebih dahulu menyelesaikan artikel mulai cepat Visual Studio Code.

Anda menampilkan versi PowerShell dari artikel ini. Pastikan untuk memilih bahasa pemrograman Functions pilihan Anda di awal artikel.

Jika Anda baru menggunakan Functions, Anda mungkin ingin terlebih dahulu menyelesaikan artikel mulai cepat Visual Studio Code.

Anda melihat versi Python dari artikel ini. Pastikan untuk memilih bahasa pemrograman Functions pilihan Anda di awal artikel.

Jika Anda baru menggunakan Functions, Anda mungkin ingin terlebih dahulu menyelesaikan artikel mulai cepat Visual Studio Code.

Anda melihat versi TypeScript dari artikel ini. Pastikan untuk memilih bahasa pemrograman Functions pilihan Anda di awal artikel.

Jika Anda baru menggunakan Functions, Anda mungkin ingin terlebih dahulu menyelesaikan artikel mulai cepat Visual Studio Code.

Penting

Jangan mencampur pengembangan lokal dan pengembangan portal untuk satu aplikasi fungsi. Saat Anda menerbitkan dari proyek lokal ke aplikasi fungsi, proses penyebaran akan menimpa fungsi apa pun yang Anda kembangkan di portal.

Prasyarat

Anda juga memerlukan prasyarat ini untuk menjalankan dan men-debug fungsi Anda secara lokal. Mereka tidak diharuskan untuk hanya membuat atau menerbitkan proyek ke Azure Functions.

  • Azure Functions Core Tools, yang memungkinkan pengalaman debugging lokal terintegrasi. Ketika Anda menginstal ekstensi Azure Functions, cara termampu untuk menginstal atau memperbarui Core Tools adalah dengan menjalankan Azure Functions: Install or Update Azure Functions Core Tools perintah dari palet perintah.

Membuat proyek Azure Functions

Ekstensi Functions memungkinkan Anda membuat proyek aplikasi fungsi yang diperlukan pada saat yang sama Anda membuat fungsi pertama Anda. Gunakan langkah-langkah ini untuk membuat fungsi yang dipicu HTTP dalam proyek baru. Pemicu HTTP adalah templat pemicu fungsi paling sederhana untuk ditunjukkan.

  1. Di bilah Aktivitas, pilih ikon Azure. Di area Ruang Kerja (Lokal), buka + daftar, dan pilih Buat Fungsi.

    Cuplikan layar membuat jendela proyek baru.

  2. Saat diminta, pilih Buat proyek baru. Pilih lokasi direktori untuk ruang kerja proyek Anda, lalu pilih Pilih.

    Anda dapat membuat folder baru atau memilih folder kosong untuk ruang kerja proyek, tetapi jangan pilih folder proyek yang sudah menjadi bagian dari ruang kerja.

  3. Saat diminta, Pilih bahasa untuk proyek Anda. Jika perlu, pilih versi bahasa tertentu.

  4. Pilih templat fungsi pemicu HTTP, atau Anda dapat memilih Lewati untuk saat ini untuk membuat proyek tanpa fungsi. Anda selalu bisa menambahkan fungsi ke proyek Anda nanti.

    Cuplikan layar untuk memilih pemicu HTTP.

    Tip

    Anda dapat melihat templat tambahan dengan memilih opsi Ubah filter templat dan mengatur nilai ke Inti atau Semua.

  5. Untuk nama fungsi, masukkan HttpExample, pilih Enter, lalu pilih Otorisasi fungsi .

    Tingkat otorisasi ini mengharuskan Anda menyediakan kunci fungsi saat Anda memanggil titik akhir fungsi.

    Cuplikan layar pembuatan otorisasi fungsi.

  6. Dari daftar dropdown, pilih Tambahkan ke ruang kerja.

    Cuplikan layar pemilihan Tambahkan ke ruang kerja.

  7. Di jendela Apakah Anda mempercayai penulis file di folder ini? , pilih Ya.

    Cuplikan layar untuk mengonfirmasi kepercayaan di penulis file.

Visual Studio Code membuat fungsi dalam bahasa yang Anda pilih dan di templat untuk fungsi yang dipicu HTTP.

File proyek yang dihasilkan

Templat proyek membuat proyek dalam bahasa yang Anda pilih dan menginstal dependensi yang diperlukan. Untuk bahasa apa pun, proyek baru memiliki file-file ini:

  • host.json: Memungkinkan Anda mengonfigurasi host Functions. Pengaturan ini berlaku saat Anda menjalankan fungsi secara lokal dan saat Anda menjalankannya di Azure. Untuk informasi selengkapnya, lihat referensi host.json.

  • local.settings.json: Mempertahankan pengaturan yang digunakan saat Anda menjalankan fungsi secara lokal. Pengaturan ini hanya digunakan saat Anda menjalankan fungsi secara lokal. Untuk informasi selengkapnya, lihat File pengaturan lokal.

    Penting

    Karena file local.settings.json dapat berisi rahasia, pastikan untuk mengecualikan file dari kontrol sumber proyek Anda.

Bergantung pada bahasa Anda, file lain ini dibuat:

File pustaka kelas HttpExample.cs, konten yang bervariasi tergantung pada apakah proyek Anda berjalan dalam proses pekerja yang terisolasi atau dalam proses dengan host Functions.

  • File pom.xml di folder akar yang menentukan parameter proyek dan penyebaran, termasuk dependensi proyek dan versi Java. Pom.xml juga berisi informasi tentang sumber daya Azure yang dibuat selama penyebaran.

  • File Functions.java di jalur src Anda yang mengimplementasikan fungsi.

File yang dihasilkan bergantung pada model pemrograman Node.js yang dipilih untuk Functions:

  • File package.json di folder akar.

  • File bernama .js di folder src\functions , yang berisi definisi fungsi dan kode fungsi Anda.

Folder HttpExample yang berisi:

File yang dihasilkan bergantung pada model pemrograman Python yang dipilih untuk Functions:

  • File requirement.txt tingkat proyek yang mencantumkan paket yang diperlukan oleh Functions.

  • File function_app.py yang berisi definisi fungsi dan kode.

Pada titik ini, Anda dapat menjalankan fungsi pemicu HTTP Anda secara lokal.

Menambahkan fungsi ke proyek Anda

Anda dapat menambahkan fungsi baru ke proyek yang sudah ada berdasarkan salah satu templat pemicu Functions yang telah ditentukan sebelumnya. Untuk menambahkan pemicu fungsi baru, pilih F1 untuk membuka palet perintah, lalu temukan dan jalankan perintah Azure Functions: Buat Fungsi. Ikuti perintah untuk memilih jenis pemicu Anda dan tentukan atribut pemicu yang diperlukan. Jika pemicu Anda memerlukan kunci akses atau string koneksi untuk tersambung ke layanan, siapkan item tersebut sebelum Anda membuat pemicu fungsi.

Tindakan ini menambahkan file pustaka kelas C# baru (.cs) ke proyek Anda.

Tindakan ini menambahkan file Java (.java) baru ke proyek Anda.

Hasil tindakan ini bergantung pada versi model Node.js.

  • File package.json di folder akar.

  • File bernama .js di folder src\functions , yang berisi definisi fungsi dan kode fungsi Anda.

Tindakan ini membuat folder baru dalam proyek. Folder berisi file function.json baru dan file kode PowerShell baru.

Hasil tindakan ini tergantung pada versi model Python.

Visual Studio Code menambahkan kode fungsi baru baik ke file function_app.py (perilaku default) atau ke file Python lain yang Anda pilih.

Menyambungkan ke layanan

Anda dapat menyambungkan fungsi Anda ke layanan Azure lainnya dengan menambahkan pengikatan input dan output. Pengikatan menghubungkan fungsi Anda ke layanan lain tanpa Anda harus menulis kode koneksi.

Misalnya, cara Anda menentukan pengikatan output yang menulis data ke antrean penyimpanan tergantung pada model proses Anda:

  1. Jika perlu, tambahkan referensi ke paket yang mendukung ekstensi pengikatan Anda.

  2. Perbarui metode fungsi untuk menambahkan atribut yang menentukan parameter pengikatan, seperti QueueOutput untuk pengikatan output antrean. Anda dapat menggunakan MultiResponse objek untuk mengembalikan beberapa pesan atau beberapa aliran output.

Misalnya, untuk menambahkan pengikatan output yang menulis data ke antrean penyimpanan, Anda memperbarui metode fungsi untuk menambahkan parameter pengikatan yang ditentukan dengan menggunakan QueueOutput anotasi. Objek OutputBinding<T> mewakili pesan yang ditulis ke pengikatan output saat fungsi selesai.

Misalnya, cara Anda menentukan pengikatan output yang menulis data ke antrean penyimpanan tergantung pada versi model Node.js Anda:

Dengan menggunakan model Node.js v4, Anda harus menambahkan return: opsi secara manual dalam definisi fungsi menggunakan storageQueue fungsi pada output objek, yang menentukan antrean penyimpanan untuk menulis return output. Output ditulis ketika fungsi selesai.

Visual Studio Code memungkinkan Anda menambahkan pengikatan ke file function.json dengan mengikuti serangkaian perintah yang nyaman.

Untuk menambahkan pengikatan, buka palet perintah (F1) dan ketik Azure Functions: tambahkan pengikatan..., pilih fungsi untuk pengikatan baru, lalu ikuti perintah, yang bervariasi tergantung pada jenis pengikatan yang ditambahkan ke fungsi.

Berikut adalah contoh perintah untuk menentukan pengikatan output penyimpanan baru:

Prompt Nilai Deskripsi
Pilih arah pengikatan out Pengikatannya adalah pengikatan output.
Pilih pengikatan dengan arah Azure Queue Storage Pengikatan adalah pengikatan antrean Azure Storage.
Nama yang digunakan untuk mengidentifikasi pengikatan ini dalam kode Anda msg Nama yang mengidentifikasi parameter pengikatan yang direferensikan dalam kode Anda.
Antrean tempat yang pesannya akan dikirimi outqueue Nama antrean yang ditulis oleh pengikatan. Saat queueName tidak ada, pengikatan membuatnya pada penggunaan pertama kali.
Pilih pengaturan dari "local.setting.json" MyStorageConnection Nama pengaturan aplikasi yang berisi string koneksi untuk akun penyimpanan. Pengaturan AzureWebJobsStorage berisi string koneksi untuk akun penyimpanan yang Anda buat dengan aplikasi fungsi.

Anda juga dapat mengklik kanan (Ctrl+klik di macOS) langsung pada file function.json di folder fungsi Anda, pilih Tambahkan pengikatan, dan ikuti perintah yang sama.

Dalam contoh ini, pengikatan berikut ditambahkan ke array bindings di file function.json:

{
    "type": "queue",
    "direction": "out",
    "name": "msg",
    "queueName": "outqueue",
    "connection": "MyStorageConnection"
}

Misalnya, cara Anda menentukan pengikatan output yang menulis data ke antrean penyimpanan tergantung pada versi model Python Anda:

Dekorator @queue_output pada fungsi digunakan untuk menentukan parameter pengikatan bernama untuk output ke antrean penyimpanan, di mana func.Out menentukan output apa yang ditulis.

Contoh berikut menunjukkan definisi fungsi setelah menambahkan pengikatan output Queue Storage ke fungsi yang dipicu HTTP:

Karena fungsi yang dipicu HTTP juga mengembalikan respons HTTP, fungsi mengembalikan MultiResponse objek, yang mewakili output HTTP dan antrean.

[Function("HttpExample")]
public static MultiResponse Run([HttpTrigger(AuthorizationLevel.Function, "get", "post")] HttpRequest req,
    FunctionContext executionContext)
{

Contoh ini adalah definisi MultiResponse objek yang mencakup pengikatan output:

public class MultiResponse
{
    [QueueOutput("outqueue",Connection = "AzureWebJobsStorage")]
    public string[] Messages { get; set; }
    public IActionResult HttpResponse { get; set; }
}

Saat menerapkan contoh tersebut ke proyek Anda sendiri, Anda mungkin perlu mengubah HttpRequest ke HttpRequestData dan IActionResult ke HttpResponseData, tergantung pada apakah Anda menggunakan integrasi ASP.NET Core atau tidak.

Pesan dikirim ke antrean ketika fungsi selesai. Cara Anda menentukan pengikatan output tergantung pada model proses Anda. Untuk informasi selengkapnya, termasuk tautan ke contoh kode pengikatan yang dapat Anda rujuk, lihat Menambahkan pengikatan ke fungsi.

@FunctionName("HttpExample")
public HttpResponseMessage run(
        @HttpTrigger(name = "req", methods = {HttpMethod.GET, HttpMethod.POST}, authLevel = AuthorizationLevel.ANONYMOUS) 
        HttpRequestMessage<Optional<String>> request, 
        @QueueOutput(name = "msg", queueName = "outqueue", 
        connection = "AzureWebJobsStorage") OutputBinding<String> msg, 
        final ExecutionContext context) {

Untuk informasi selengkapnya, termasuk tautan ke contoh kode pengikatan yang dapat Anda rujuk, lihat Menambahkan pengikatan ke fungsi.

Contoh pengikatan untuk model Node.js v4 belum tersedia.

Cara Anda menentukan pengikatan output tergantung pada versi model Node.js Anda. Untuk informasi selengkapnya, termasuk tautan ke contoh kode pengikatan yang dapat Anda rujuk, lihat Menambahkan pengikatan ke fungsi.

$outputMsg = $name
Push-OutputBinding -name msg -Value $outputMsg

Untuk informasi selengkapnya, termasuk tautan ke contoh kode pengikatan yang dapat Anda rujuk, lihat Menambahkan pengikatan ke fungsi.

@app.route(route="HttpExample")
@app.queue_output(arg_name="msg", queue_name="outqueue", connection="AzureWebJobsStorage")
def HttpExample(req: func.HttpRequest, msg: func.Out [func.QueueMessage]) -> func.HttpResponse:
    logging.info('Python HTTP trigger function processed a request.')

Cara Anda menentukan pengikatan output tergantung pada versi model Python Anda. Untuk informasi selengkapnya, termasuk tautan ke contoh kode pengikatan yang dapat Anda rujuk, lihat Menambahkan pengikatan ke fungsi.

Contoh pengikatan untuk model Node.js v4 belum tersedia.

Cara Anda menentukan pengikatan output tergantung pada versi model Node.js Anda. Untuk informasi selengkapnya, termasuk tautan ke contoh kode pengikatan yang dapat Anda rujuk, lihat Menambahkan pengikatan ke fungsi.

Masuk ke Azure

Sebelum dapat membuat sumber daya Azure atau menerbitkan aplikasi, Anda harus masuk ke Azure.

  1. Jika Anda belum masuk, pilih ikon Azure di bilah Aktivitas. Lalu, di area Sumber Daya, pilih Masuk ke Azure...

    Cuplikan layar masuk ke jendela Azure dalam VS Code.

    Jika sudah masuk dan dapat melihat langganan Anda yang ada, buka bagian berikutnya. Jika Anda belum memiliki akun Azure, pilih Buat Akun Azure.... Siswa dapat memilih Buat Akun Azure for Students....

  2. Saat diminta di browser, pilih akun Azure Anda dan masuk menggunakan kredensial akun Azure Anda. Jika membuat akun baru, Anda dapat masuk setelah akun berhasil dibuat.

  3. Setelah berhasil masuk, Anda dapat menutup jendela browser baru. Langganan dalam akun Azure Anda ditampilkan di bilah sisi.

Membuat sumber daya Azure

Sebelum dapat menerbitkan proyek Functions ke Azure, Anda harus memiliki aplikasi fungsi dan sumber daya terkait di langganan Azure Anda untuk menjalankan kode. Aplikasi fungsi menyediakan konteks eksekusi untuk fungsi Anda. Saat Anda menerbitkan dari Visual Studio Code ke aplikasi fungsi di Azure, proyek dipaketkan dan disebarkan ke aplikasi fungsi yang dipilih di langganan Azure Anda.

Saat membuat aplikasi fungsi di Azure, Anda dapat memilih jalur pembuatan aplikasi fungsi cepat menggunakan default atau jalur lanjutan. Dengan cara ini, Anda memiliki lebih banyak kontrol atas pembuatan sumber daya jarak jauh.

Pembuatan aplikasi fungsi cepat

Di bagian ini, Anda membuat aplikasi fungsi dan sumber daya terkait di langganan Azure Anda.

  1. Pilih ikon Azure di bilah Aktivitas. Lalu, di area Sumber Daya, pilih ikon + dan pilih opsi Buat Aplikasi Fungsi di Azure.

    Membuat sumber daya di langganan Azure Anda

  2. Berikan informasi berikut pada permintaan:

    Prompt Pilihan
    Pilih langganan Pilih langganan yang akan digunakan. Anda tidak akan melihat permintaan ini jika Anda hanya memiliki satu langganan yang terlihat di bawah Sumber Daya.
    Masukkan nama unik global untuk aplikasi fungsi Ketik nama yang valid di jalur URL. Nama yang Anda ketik akan divalidasi untuk memastikan bahwa nama tersebut bersifat unik di Azure Functions.
    Pilih tumpukan runtime Pilih versi bahasa pemrogram yang telah Anda jalankan secara lokal.
    Pilih lokasi untuk sumber daya baru Pilih wilayah yang lebih dekat dengan Anda untuk kinerja yang lebih baik.

    Ekstensi tersebut menampilkan status sumber daya individual saat dibuat di Azure pada panel Azure: Log Aktivitas.

    Log pembuatan sumber daya Azure

  3. Setelah pembuatan selesai, sumber daya Azure berikut dibuat di langganan Anda. Sumber daya dinamai berdasarkan nama aplikasi fungsi Anda:

    • Grup sumber daya, yang merupakan kontainer logis untuk sumber daya terkait.
    • Akun Azure Storage standar, memelihara status dan informasi lain tentang proyek Anda.
    • Aplikasi fungsi, menyediakan lingkungan untuk menjalankan kode fungsi Anda. Aplikasi fungsi memungkinkan Anda mengelompokkan fungsi sebagai unit logis untuk memudahkan pengelolaan, penerapan, dan berbagi sumber daya dalam paket hosting yang sama.
    • Paket App Service, menentukan host yang mendasari aplikasi fungsi Anda.
    • Instans Application Insights tersambung ke aplikasi fungsi, yang melacak penggunaan fungsi Anda di aplikasi.

    Notifikasi ditampilkan setelah aplikasi fungsi Anda dibuat dan paket penyebaran diterapkan.

    Tip

    Secara default, sumber daya Azure yang diperlukan oleh aplikasi fungsi Anda dibuat berdasarkan nama aplikasi fungsi yang Anda berikan. Secara default, sumber daya ini juga dibuat di grup sumber daya baru yang sama dengan aplikasi fungsi. Jika ingin menyesuaikan nama sumber daya ini atau menggunakan kembali sumber daya yang ada, Anda perlu menerbitkan proyek dengan opsi pembuatan lanjutan.

Menerbitkan proyek ke aplikasi fungsi baru di Azure dengan menggunakan opsi tingkat lanjut

Langkah-langkah berikut menerbitkan proyek Anda ke aplikasi fungsi baru yang dibuat dengan opsi pembuatan tingkat lanjut:

  1. Di palet perintah, masukkan Azure Functions: Buat aplikasi fungsi di Azure... (Tingkat Lanjut).

  2. Jika Anda tidak masuk, Anda akan diminta untuk Masuk ke Azure. Anda juga dapat Membuat akun Azure gratis. Setelah masuk dari browser, kembali ke Visual Studio Code.

  3. Mengikuti perintah, berikan informasi ini:

    Prompt Pilihan
    Masukkan nama yang unik secara global untuk aplikasi fungsi baru. Ketikkan nama unik secara global yang mengidentifikasi aplikasi fungsi baru Anda lalu pilih Masukkan. Karakter yang valid untuk nama aplikasi fungsi adalah a-z, 0-9, dan -.
    Pilih tumpukan runtime. Pilih versi bahasa yang Anda jalankan secara lokal.
    Pilih OS. Pilih Linux atau Windows. Aplikasi Python harus dijalankan di Linux.
    Pilih grup sumber daya untuk sumber daya baru. Pilih Buat grup sumber daya baru, dan masukkan nama grup sumber daya seperti myResourceGroup. Anda juga dapat memilih grup sumber daya yang ada.
    Pilih lokasi untuk sumber daya baru. Pilih lokasi di wilayah di dekat Anda atau di dekat layanan lain yang diakses fungsi Anda.
    Pilih paket hosting. Pilih Konsumsi untuk hosting paket Konsumsi tanpa server, di mana Anda hanya dikenakan biaya saat fungsi Anda berjalan.
    Pilih akun penyimpanan. Pilih Buat akun penyimpanan baru, dan pada perintah, masukkan nama unik global untuk akun penyimpanan baru yang digunakan oleh aplikasi fungsi Anda. Nama akun penyimpanan harus sepanjang 3 dan 24 karakter dan hanya mengandung angka dan huruf kecil saja. Anda juga dapat memilih akun yang sudah ada.
    Pilih sumber daya Application Insights untuk aplikasi Anda. Pilih Buat sumber daya Application Insights baru, dan pada perintah, masukkan nama untuk instans yang digunakan untuk menyimpan data runtime dari fungsi Anda.

    Pemberitahuan muncul setelah aplikasi fungsi Anda dibuat, dan paket penyebaran diterapkan. Untuk melihat hasil pembuatan dan penyebaran, termasuk sumber daya Azure yang Anda buat, pilih Tampilkan Output dalam pemberitahuan ini.

Mendapatkan URL fungsi yang dipicu HTTP di Azure

Untuk memanggil fungsi yang dipicu HTTP dari klien, Anda memerlukan URL fungsi, yang tersedia setelah penyebaran ke aplikasi fungsi Anda. URL ini mencakup tombol fungsi yang diperlukan. Anda dapat menggunakan ekstensi untuk mendapatkan URL ini untuk fungsi Anda yang disebarkan. Jika Anda hanya ingin menjalankan fungsi jarak jauh di Azure, gunakan fungsi Jalankan sekarang fungsionalitas ekstensi.

  1. Pilih F1 untuk membuka palet perintah, lalu temukan dan jalankan perintah Azure Functions: Salin URL Fungsi.

  2. Ikuti perintah untuk memilih aplikasi fungsi Anda di Azure lalu pemicu HTTP tertentu yang ingin Anda panggil.

URL fungsi disalin ke clipboard, bersama dengan kunci yang diperlukan yang diteruskan oleh parameter kueri code. Gunakan alat HTTP untuk mengirimkan permintaan POST, atau browser untuk mengirimkan permintaan GET ke fungsi jarak jauh.

Saat ekstensi mendapatkan URL fungsi di Azure, ekstensi menggunakan akun Azure Anda untuk mengambil kunci yang diperlukan secara otomatis untuk memulai fungsi. Pelajari selengkapnya tentang kunci akses fungsi. Memulai fungsi yang dipicu non-HTTP memerlukan penggunaan kunci admin.

Menyebarkan file proyek

Sebaiknya siapkan penyebaran berkelanjutan sehingga aplikasi fungsi Anda di Azure diperbarui saat Anda memperbarui file sumber di lokasi sumber yang terhubung. Anda juga dapat menyebarkan file proyek Anda dari Visual Studio Code. Saat menerbitkan dari Visual Studio Code, Anda dapat memanfaatkan teknologi penyebaran Zip.

Penting

Penyebaran ke aplikasi fungsi yang ada selalu menimpa konten aplikasi tersebut di Azure.

  1. Di area Sumber Daya aktivitas Azure, temukan sumber daya aplikasi fungsi yang baru saja Anda buat, klik kanan sumber daya, dan pilih Sebarkan ke aplikasi fungsi....

  2. Saat diminta untuk menimpa penyebaran sebelumnya, pilih Sebarkan untuk menyebarkan kode fungsi Anda ke sumber daya aplikasi fungsi baru.

  3. Setelah penyebaran selesai, pilih Tampilkan Output untuk melihat hasil pembuatan dan penyebaran, termasuk sumber daya Azure yang Anda buat. Jika melewatkan pemberitahuan, pilih ikon bel di sudut kanan bawah untuk melihatnya lagi.

    Cuplikan layar jendela Tampilan Output.

Jalankan fungsi

Ekstensi Azure Functions memungkinkan Anda menjalankan fungsi individual. Anda dapat menjalankan fungsi baik di proyek Anda di komputer pengembangan lokal atau di langganan Azure Anda.

Untuk fungsi pemicu HTTP, ekstensi memanggil titik akhir HTTP. Untuk jenis pemicu lainnya, ekstensi memanggil API administrator untuk memulai fungsi. Isi pesan permintaan yang dikirim ke fungsi tergantung pada jenis pemicu. Saat pemicu memerlukan data pengujian, Anda akan diminta memasukkan data dalam format JSON tertentu.

Menjalankan fungsi di Azure

Untuk menjalankan fungsi di Azure dari Visual Studio Code, ikuti langkah-langkah berikut:

  1. Di palet perintah, masukkan Azure Functions: Jalankan fungsi sekarang, dan pilih langganan Azure Anda.

  2. Dari daftar, pilih aplikasi fungsi Anda di Azure. Jika Anda tidak melihat aplikasi fungsi Anda, pastikan Anda masuk ke langganan yang benar.

  3. Dari daftar, pilih fungsi yang ingin Anda jalankan. Di Masukkan isi permintaan, ketik isi pesan permintaan, dan tekan Enter untuk mengirim pesan permintaan ini ke fungsi Anda.

    Teks default di Masukkan isi permintaan menunjukkan format isi. Jika aplikasi fungsi Anda tidak memiliki fungsi, kesalahan notifikasi akan ditampilkan dengan kesalahan ini.

    Saat fungsi dijalankan di Azure dan mengembalikan respons, Visual Studio Code menampilkan pemberitahuan.

Anda juga dapat menjalankan fungsi dari area Azure: Functions dengan membuka menu pintasan untuk fungsi yang ingin Anda jalankan dari aplikasi fungsi di langganan Azure Anda, lalu memilih Jalankan Fungsi Sekarang....

Saat Anda menjalankan fungsi di Azure dari Visual Studio Code, ekstensi menggunakan akun Azure Anda untuk mengambil kunci yang diperlukan secara otomatis untuk memulai fungsi. Pelajari selengkapnya tentang kunci akses fungsi. Memulai fungsi yang dipicu non-HTTP memerlukan penggunaan kunci admin.

Jalankan fungsi secara lokal

Runtime lokal adalah runtime yang sama yang memandu aplikasi fungsi Anda di Azure. Pengaturan lokal dibaca dari file local.settings.json. Untuk menjalankan proyek Functions Anda secara lokal, Anda harus memenuhi persyaratan lainnya.

Mengonfigurasi proyek untuk berjalan secara lokal

Runtime Functions menggunakan akun Azure Storage secara internal untuk semua jenis pemicu selain HTTP dan webhook. Jadi Anda perlu mengatur kunci Values.AzureWebJobsStorage ke string koneksi akun Penyimpanan Azure yang valid.

Bagian ini menggunakan ekstensi Azure Storage untuk Visual Studio Code dengan Azure Storage Explorer untuk menyambungkan dan mengambil string koneksi penyimpanan.

Untuk mengatur string koneksi akun penyimpanan:

  1. Di Visual Studio, buka Cloud Explorer, luaskan Akun Storage>Akun Storage Anda, lalu pilih Properti dan salin nilai String Koneksi Utama.

  2. Di proyek Anda, buka file local.settings.json dan atur nilai kunci AzureWebJobsStorage ke string koneksi yang Anda salin.

  3. Ulangi langkah sebelumnya untuk menambahkan kunci unik ke larik Nilai untuk koneksi lain yang diperlukan oleh fungsi Anda.

Untuk informasi selengkapnya, lihat File pengaturan lokal.

Menelusuri kesalahan fungsi secara lokal

Untuk menelusuri kesalahan fungsi Anda, pilih F5. Jika Core Tools tidak tersedia, Anda akan diminta untuk menginstalnya. Ketika Core Tools dipasang dan berjalan, output ditampilkan di Terminal. Langkah ini sama dengan menjalankan perintah func start Core Tools dari Terminal, tetapi dengan tugas build tambahan dan debugger terlampir.

Ketika proyek berjalan, Anda dapat menggunakan fitur Jalankan Fungsi Sekarang... dari ekstensi untuk memicu fungsi Anda seperti yang Anda lakukan ketika proyek disebarkan ke Azure. Dengan proyek yang berjalan dalam mode debug, titik henti akan tercapai di Visual Studio Code seperti yang Anda harapkan.

  1. Di palet perintah, masukkan Azure Functions: Jalankan fungsi sekarang dan pilih Proyek lokal.

  2. Pilih fungsi yang ingin Anda jalankan dari daftar dan ketik badan pesan permintaan di Masukkan isi permintaan. Tekan Masukkan untuk mengirim pesan permintaan ini ke fungsi Anda. Teks default dalam Masukkan isi permintaan harus menunjukkan format isi. Jika aplikasi fungsi Anda tidak memiliki fungsi, kesalahan notifikasi akan ditampilkan dengan kesalahan ini.

  3. Saat fungsi berjalan secara lokal dan setelah respons diterima, pemberitahuan akan dimunculkan di Visual Studio Code. Informasi tentang eksekusi fungsi ditampilkan di panel Terminal.

Kunci tidak diperlukan saat berjalan secara lokal, yang berlaku untuk kunci fungsi dan kunci tingkat admin.

Bekerja dengan pengaturan aplikasi secara lokal

Saat menjalankan aplikasi fungsi di Azure, pengaturan yang diperlukan oleh fungsi Anda disimpan dengan aman di pengaturan aplikasi. Selama pengembangan lokal, pengaturan ini ditambahkan ke Values koleksi dalam file local.settings.json. File local.settings.json juga menyimpan pengaturan yang digunakan oleh alat pengembangan lokal.

Item dalam Values koleksi dalam file local.settings.json proyek Anda dimaksudkan untuk mencerminkan item di pengaturan aplikasi aplikasi fungsi Anda di Azure.

Secara default, pengaturan ini tidak dimigrasikan secara otomatis saat proyek diterbitkan ke Azure. Setelah penerbitan selesai, Anda diberi opsi untuk menerbitkan pengaturan dari local.settings.json ke aplikasi fungsi Anda di Azure. Untuk mempelajari lebih lanjut, lihat Menerbitkan pengaturan aplikasi.

Nilai dalam ConnectionStrings tidak pernah diterbitkan.

Nilai pengaturan aplikasi fungsi juga dapat dibaca dalam kode Anda sebagai variabel lingkungan. Untuk informasi selengkapnya, lihat Variabel lingkungan.

  • Nilai pengaturan aplikasi fungsi juga dapat dibaca dalam kode Anda sebagai variabel lingkungan. Untuk informasi selengkapnya, lihat Variabel lingkungan.
  • Nilai pengaturan aplikasi fungsi juga dapat dibaca dalam kode Anda sebagai variabel lingkungan. Untuk informasi selengkapnya, lihat Variabel lingkungan.
  • Nilai pengaturan aplikasi fungsi juga dapat dibaca dalam kode Anda sebagai variabel lingkungan. Untuk informasi selengkapnya, lihat Variabel lingkungan.
  • Nilai pengaturan aplikasi fungsi juga dapat dibaca dalam kode Anda sebagai variabel lingkungan. Untuk informasi selengkapnya, lihat Variabel lingkungan.

Pengaturan aplikasi di Azure

Pengaturan di file local.settings.json di proyek Anda harus sama dengan pengaturan aplikasi di aplikasi fungsi di Azure. Pengaturan apa pun yang Anda tambahkan ke local.settings.json juga harus Anda tambahkan ke aplikasi fungsi di Azure. Pengaturan ini tidak diunggah secara otomatis saat Anda menerbitkan proyek. Demikian juga, pengaturan apa pun yang Anda buat di aplikasi fungsi Anda di portal harus diunduh ke proyek lokal Anda.

Menerbitkan pengaturan aplikasi

Cara termudah untuk menerbitkan pengaturan yang diperlukan ke aplikasi fungsi Anda di Azure adalah dengan menggunakan tautan Unggah pengaturan yang muncul setelah Anda menerbitkan proyek Anda:

Cuplikan layar mengunggah pengaturan aplikasi.

Anda juga dapat menerbitkan pengaturan dengan menggunakan perintah Azure Functions: Unggah Pengaturan Lokal di palet perintah. Anda bisa menambahkan pengaturan individual ke pengaturan aplikasi di Azure dengan menggunakan perintah Azure Functions: Tambahkan Pengaturan Baru.

Tip

Pastikan untuk menyimpan file local.settings.json Anda sebelum Anda menerbitkannya.

Jika file lokal dienkripsi, file tersebut didekripsi, diterbitkan, dan dienkripsi lagi. Jika ada pengaturan yang memiliki nilai yang bertentangan di dua lokasi, Anda akan diminta untuk memilih cara melanjutkan.

Menampilkan pengaturan aplikasi yang sudah ada di area Azure: Functions dengan memperluas langganan, aplikasi fungsi, dan Pengaturan Aplikasi Anda.

 Cuplikan layar tampilan pengaturan aplikasi fungsi di Visual Studio Code.

Unduh pengaturan dari Azure

Jika Anda telah membuat pengaturan aplikasi di Azure, Anda dapat mengunduhnya ke file local.settings.json dengan menggunakan perintah Azure Functions: Unduh Pengaturan Jarak Jauh.

Seperti halnya mengunggah, jika file lokal dienkripsi, file tersebut didekripsi, diperbarui, dan dienkripsi lagi. Jika ada pengaturan yang memiliki nilai yang bertentangan di dua lokasi, Anda akan diminta untuk memilih cara melanjutkan.

Pasang ekstensi pengikatan

Kecuali untuk pemicu HTTP dan timer, pengikatan diimplementasikan dalam paket ekstensi.

Anda harus secara eksplisit menginstal paket ekstensi untuk pemicu dan pengikatan yang membutuhkannya. Paket spesifik yang Anda instal tergantung pada model proses proyek Anda.

Jalankan perintah paket penambahan dotnet di jendela Terminal untuk memasang paket ekstensi yang Anda butuhkan dalam proyek Anda. Templat ini menunjukkan cara Anda menambahkan pengikatan untuk pustaka kelas proses terisolasi:

dotnet add package Microsoft.Azure.Functions.Worker.Extensions.<BINDING_TYPE_NAME> --version <TARGET_VERSION>

Ganti <BINDING_TYPE_NAME> dengan nama paket yang berisi pengikatan yang Anda butuhkan. Anda dapat menemukan artikel referensi pengikatan yang diinginkan dalam daftar pengikatan yang didukung.

Ganti <TARGET_VERSION> dalam contoh dengan versi paket tertentu, seperti 3.0.0-beta5. Versi yang valid tercantum di halaman paket individual di NuGet.org. Versi utama yang sesuai dengan runtime Functions saat ini ditentukan dalam artikel referensi untuk pengikatan.

Skrip C# menggunakan bundel ekstensi.

Cara termudah untuk menginstal ekstensi pengikatan adalah dengan mengaktifkan bundel ekstensi. Saat Anda mengaktifkan bundel, sekumpulan paket ekstensi yang telah ditentukan telah diinstal secara otomatis.

Untuk mengaktifkan bundel ekstensi, buka file host.json dan perbarui kontennya agar sesuai dengan kode berikut:

{
    "version": "2.0",
    "extensionBundle": {
        "id": "Microsoft.Azure.Functions.ExtensionBundle",
        "version": "[3.*, 4.0.0)"
    }
}

Jika karena alasan tertentu Anda tidak dapat menggunakan bundel ekstensi untuk menginstal ekstensi pengikatan untuk proyek Anda, lihat Menginstal ekstensi secara eksplisit.

Fungsi pemantauan

Saat Anda menjalankan fungsi secara lokal, data log dialirkan ke konsol Terminal. Anda juga bisa mendapatkan data log saat proyek Functions berjalan di aplikasi fungsi di Azure. Anda dapat menyambungkan ke log streaming di Azure untuk melihat data log yang hampir real-time. Anda harus mengaktifkan Application Insights untuk pemahaman yang lebih lengkap tentang cara kerja aplikasi fungsi Anda.

Log streaming

Saat Anda mengembangkan aplikasi, seringkali berguna untuk melihat informasi pengelogan hampir secara real time. Anda dapat melihat aliran file log yang dihasilkan oleh fungsi Anda. Aktifkan log dari palet perintah dengan Azure Functions: Start streaming logs perintah . Output ini adalah contoh log streaming untuk permintaan ke fungsi yang dipicu HTTP:

Cuplikan layar proses mengalirkan output log untuk pemicu HTTP.

Untuk mempelajari lebih lanjut, lihat Log streaming.

Application Insights

Anda harus memantau eksekusi fungsi Anda dengan mengintegrasikan aplikasi fungsi Anda dengan Application Insights. Saat Anda membuat aplikasi fungsi di portal Microsoft Azure, integrasi ini terjadi secara default. Saat membuat aplikasi fungsi selama penerbitan Visual Studio, Anda harus mengintegrasikan sendiri Application Insights. Untuk mempelajari caranya, lihat Mengaktifkan integrasi Application Insights.

Untuk mempelajari selengkapnya tentang pemantauan menggunakan Application Insights, lihat Memantau Azure Functions.

Proyek skrip C#

Secara default, semua proyek C# dibuat sebagai proyek pustaka kelas terkompilasi C#. Jika Anda lebih suka bekerja dengan proyek skrip C#, Anda harus memilih skrip C# sebagai bahasa default di pengaturan ekstensi Azure Functions:

  1. Pilih File>Preferensi>Pengaturan.

  2. Buka Pengaturan Pengguna>Ekstensi>Azure Functions.

  3. Pilih C#Script dari Fungsi Azure: Bahasa Proyek.

Setelah Anda menyelesaikan langkah-langkah ini, panggilan yang dilakukan ke Core Tools yang mendasarinya menyertakan opsi --csx, yang menghasilkan dan menerbitkan file proyek skrip C# (.csx). Bila Anda telah menentukan bahasa default ini, semua proyek yang Anda buat secara default ke proyek skrip C#. Anda tidak diminta untuk memilih bahasa proyek saat default diatur. Untuk membuat proyek dalam bahasa lain, Anda harus mengubah pengaturan ini atau menghapusnya dari file settings.json pengguna. Setelah menghapus pengaturan ini, Anda akan kembali diminta untuk memilih bahasa Anda saat membuat proyek.

Referensi palet perintah

Ekstensi Azure Functions menyediakan antarmuka grafis yang berguna di area untuk berinteraksi dengan aplikasi fungsi Anda di Azure. Fungsionalitas yang sama juga tersedia sebagai perintah di palet perintah (F1). Perintah Azure Functions ini tersedia:

Perintah Azure Functions Deskripsi
Tambah Pengaturan Baru Membuat pengaturan aplikasi baru di Azure. Untuk mempelajari lebih lanjut, lihat Menerbitkan pengaturan aplikasi. Anda mungkin juga perlu mengunduh pengaturan ini ke pengaturan lokal Anda.
Mengonfigurasi Sumber Penyebaran Menyambungkan aplikasi fungsi Anda di Azure ke repositori Git lokal. Untuk mempelajari selengkapnya, lihat Penyebaran berkelanjutan untuk Azure Functions.
Menyambungkan ke Repositori GitHub Menyambungkan aplikasi fungsi Anda ke repositori GitHub.
Salin URL Fungsi Mendapatkan URL jarak jauh dari fungsi yang dipicu HTTP yang berjalan di Azure. Untuk mempelajari lebih lanjut, lihat Mendapatkan URL fungsi yang disebarkan.
Membuat aplikasi fungsi di Azure Membuat aplikasi fungsi baru di langganan Anda di Azure. Untuk mempelajari selengkapnya, lihat bagian tentang cara menerbitkan ke aplikasi fungsi baru di Azure.
Pengaturan Dekripsi Mendekripsi pengaturan lokal yang telah dienkripsi oleh Azure Functions: Enkripsi Pengaturan.
Hapus Aplikasi Fungsi Menghapus aplikasi fungsi dari langganan Anda di Azure. Ketika tidak ada aplikasi lain dalam paket App Service, Anda juga diberi opsi untuk menghapusnya. Sumber daya lain, seperti akun penyimpanan dan grup sumber daya, tidak dihapus. Untuk menghapus semua sumber daya, Anda harus menghapus grup sumber daya. Proyek lokal Anda tidak terpengaruh.
Menghapus Fungsi Menghapus fungsi yang sudah ada dari aplikasi fungsi di Azure. Karena penghapusan ini tidak memengaruhi proyek lokal Anda, pertimbangkan untuk menghapus fungsi secara lokal lalu menerbitkan ulang proyek Anda.
Menghapus Proksi Menghapus proksi Azure Functions dari aplikasi fungsi Anda di Azure. Untuk mempelajari selengkapnya tentang proksi, lihat Bekerja dengan Azure Functions Proxies.
Menghapus Pengaturan Menghapus pengaturan aplikasi fungsi di Azure. Penghapusan ini tidak mempengaruhi pengaturan di file local.settings.json.
Memutus sambungan dari Repositori Menghapus koneksi penyebaran berkelanjutan antara aplikasi fungsi di Azure dengan repositori kontrol sumber.
Mengunduh Pengaturan Jarak Jauh Mengunduh pengaturan dari aplikasi fungsi yang dipilih di Azure ke dalam file local.settings.json. Jika file lokal dienkripsi, file tersebut didekripsi, diperbarui, dan dienkripsi lagi. Jika ada pengaturan yang memiliki nilai yang bertentangan di dua lokasi, Anda akan diminta untuk memilih cara melanjutkan. Pastikan untuk menyimpan perubahan ke file local.settings.json Anda sebelum Anda menjalankan perintah ini.
Mengedit pengaturan Mengubah nilai pengaturan aplikasi fungsi yang sudah ada di Azure. Perintah ini tidak mempengaruhi pengaturan di file local.settings.json.
Mengenkripsi pengaturan Mengenkripsi item individual dalam Values array di pengaturan lokal. Dalam file ini, IsEncrypted juga diatur ke true, yang menentukan bahwa pengaturan dekripsi runtime lokal sebelum menggunakannya. Enkripsi pengaturan lokal untuk mengurangi risiko membocorkan informasi berharga. Di Azure, pengaturan aplikasi selalu disimpan terenkripsi.
Menjalankan Fungsi Sekarang Memulai fungsi secara manual menggunakan API admin. Perintah ini digunakan untuk pengujian, baik secara lokal selama penelusuran kesalahan maupun terhadap fungsi yang berjalan di Azure. Saat fungsi di Azure dimulai, ekstensi terlebih dahulu mendapatkan kunci admin secara otomatis, yang digunakan untuk memanggil API admin jarak jauh yang memulai fungsi di Azure. Badan pesan yang dikirim ke API bergantung pada jenis pemicunya. Pemicu timer tidak mengharuskan Anda untuk meneruskan data apa pun.
Menginisialisasi Proyek untuk Digunakan dengan Visual Studio Code Menambahkan file proyek Visual Studio Code yang diperlukan ke proyek Functions yang sudah ada. Gunakan perintah ini untuk bekerja dengan proyek yang Anda buat dengan menggunakan Core Tools.
Memasang atau Memperbarui Azure Functions Core Tools Pemasangan atau pembaruan Azure Functions Core Tools, yang digunakan untuk menjalankan fungsi secara lokal.
Menyebarkan ulang Memungkinkan Anda menyebarkan ulang file proyek dari repositori Git yang terhubung ke penyebaran tertentu di Azure. Untuk menerbitkan ulang pembaruan lokal dari Visual Studio Code, terbitkan ulang proyek Anda.
Mengganti Nama Pengaturan Mengubah nama kunci pengaturan aplikasi fungsi yang sudah ada di Azure. Perintah ini tidak mempengaruhi pengaturan di file local.settings.json. Setelah Anda mengganti nama pengaturan di Azure, Anda harus mengunduh perubahan tersebut ke proyek lokal.
Hidupkan Ulang Memulai ulang aplikasi fungsi di Azure. Menyebarkan pembaruan juga memulai ulang aplikasi fungsi.
Menetapkan AzureWebJobsStorage Menetapkan nilai pengaturan aplikasi AzureWebJobsStorage. Pengaturan ini diperlukan oleh Azure Functions. Ini ditetapkan saat aplikasi fungsi dibuat di Azure.
Mulai Memulai aplikasi fungsi yang dihentikan di Azure.
Memulai Log Streaming Memulai log streaming untuk aplikasi fungsi di Azure. Gunakan log streaming selama pemecahan masalah jarak jauh di Azure jika Anda perlu melihat informasi pengelogan hampir secara real-time. Untuk mempelajari lebih lanjut, lihat Log streaming.
Stop Menghentikan aplikasi fungsi yang berjalan di Azure.
Menghentikan Log Streaming Menghentikan log streaming untuk aplikasi fungsi di Azure.
Mengalihkan sebagai Pengaturan Slot Saat diaktifkan, pastikan bahwa pengaturan aplikasi tetap ada untuk slot penyebaran tertentu.
Copot Pemasangan Azure Functions Core Tools Menghapus Azure Functions Core Tools, yang diperlukan oleh ekstensi.
Mengunggah Pengaturan Lokal Mengunggah pengaturan dari file local.settings.json Anda ke aplikasi fungsi yang dipilih di Azure. Jika file lokal dienkripsi, file tersebut didekripsi, diunggah, dan dienkripsi lagi. Jika ada pengaturan yang memiliki nilai yang bertentangan di dua lokasi, Anda akan diminta untuk memilih cara melanjutkan. Pastikan untuk menyimpan perubahan ke file local.settings.json Anda sebelum Anda menjalankan perintah ini.
Menampilkan Komit di GitHub Memperlihatkan kepada Anda komit terbaru dalam penyebaran tertentu saat aplikasi fungsi Anda terhubung ke repositori.
Menampilkan Log Penyebaran Menunjukkan kepada Anda log untuk penyebaran tertentu ke aplikasi fungsi di Azure.

Langkah berikutnya

Untuk informasi selengkapnya tentang Azure Functions Core Tools, lihat Bekerja dengan Azure Functions Core Tools.

Untuk informasi selengkapnya tentang mengembangkan fungsi sebagai pustaka kelas .NET, lihat Referensi pengembang Azure Functions C#. Artikel ini juga menyediakan tautan ke contoh cara menggunakan atribut untuk mendeklarasikan berbagai jenis pengikatan yang didukung oleh Azure Functions.