Listrik merupakan salah satu kebutuhan primer bagi manusia di zaman digital ini. PLN sebagai penyedia layanan listrik bertanggung jawab untuk menyediakan layanan yang reliabel kepada pelanggannya, di mana pun lokasi tinggalnya. Tentu saja tidak mungkin PLN bisa menyediakan layanan tanpa pemadaman, faktor eksternal seperti cuaca dan bencana alam pasti diluar kendali PLN. Tetapi apa yang terjadi jika layanan PLN sering kali putus nyambung? Di mana batas “normal” jika terjadi pemadaman?
Kali ini penulis akan bercerita pengalaman penulis selama satu tahun terakhir (2023-2024) dengan PLN di Kabupaten Bogor. Data yang digunakan dalam artikel ini berasal dari server Ritsu-Pi dan dikumpulkan menggunakan Prometheus.
Pada artikel ini kita akan menjawab pertanyaan-pertanyaan penting seperti seberapa sering mati listrik? Berapa lama mati listrik? dan lainnya!
Seperti biasa, kita mulai dengan mengimpor library yang diperlukan.
|
|
Memuat Data
Tahap selanjutnya adalah memuat data yang akan kita analisis. Seperti biasa data yang akan kita gunakan sudah saya sediakan secara terbuka dan bisa digunakan dengan bebas asalkan mencantumkan nama penulis😁
|
|
Output:
|
|
Dataset ini terdiri atas dua kolom/atribut, yaitu:
timestamp
yang berisi waktu baris data tersebut direkam oleh Prometheusvalue
waktu kapan server pertama kali menyala setelah restart terakhir
Waktu dalam kedua kolom ini adalah UNIX timestamp (seconds). Karena kolom value
memiliki nilai yang konstan sejak waktu terakhir server di-restart, maka kita bisa menggunakan informasi ini untuk mengukur selisih waktu antara dua baris data dengan nilai value
yang berbeda untuk menentukan downtime dan uptime.
Uptime didefinisikan sebagai lama waktu tidak terjadi mati listrik dan downtime adalah lama waktu mati listrik.
Praproses Data
Untuk dapat menurunkan nilai uptime dan downtime, kita bisa menggunakan manipulasi date time menggunakan Pandas. Tetapi sebelum itu, kita perlu mengonversi waktu UTC pada kolom timestamp menjadi pandas.datetime
agar kita bisa lebih mudah mengakses datanya menggunakan aksesor .dt
|
|
Sekarang pada kolom timestamp
sudah bukan float64
lagi, melainkan datetime64
. Tahap selanjutnya adalah menentukan waktu awal dan akhir dari setiap nilai unik pada kolom value
. Idenya adalah jika kita mengelompokkan nilai unik pada kolom values
, kita bisa mendapatkan waktu kapan server pertama menyala dan waktu kapan server terakhir menyala.
|
|
Sampai di sini kita sudah mendapatkan waktu awal dan akhir server menyala. Tahap selanjutnya adalah menghitung berapa lama waktu server menyala dan mati berdasarkan waktu awal dan akhir yang sudah dihitung sebelumnya. Untuk menghitung downtime, penulis menggunakan fungsi shift
untuk menghilangkan satu baris teratas agar bisa dicari selisih waktu mati.
Selain itu data dari Prometheus terdapat sedikit anomali yang menghasilkan nilai negatif pada down time atau ada maintenance dengan server sehingga perlu dilakukan penghapusan data pencilan.
|
|
Analisis Data
Setelah kita memiliki data downtime dan uptime, selanjutnya kita bisa memulai proses analisis dan visualisasi data untuk menjawab pertanyaan-pertanyaan penulis yang penasaran, apa iya PLN ini sering banget mati listrik atau perasaan penulis aja?
Service Level Agreement (SLA)
Service Level Agreement (SLA) dalam konteks jasa IT adalah komitmen antara penyedia layanan dan pengguna yang menjelaskan apa saja metrik atau ukuran performa layanan yang diberikan [1]. Misalnya dalam kasus layanan internet, SLA 99.9% dengan bandwidth 50 Mbps berarti penyedia layanan internet harus menyediakan internet dengan bandwidth 50 Mbps dan jaminan gangguan maksimal 1 menit 26 detik per hari atau 8 jam 41 menit 38 detik per tahun. Kamu bisa menghitung berapa batasan downtime menggunakan layanan ini.
|
|
Output:
|
|
Pada kasus ini ternyata dalam kurun waktu satu tahun, terjadi mati listrik selama 4 hari 18 jam 22 menit. Jika dikonversi menjadi SLA, didapatkan SLA sebesar 98,7901%. Biasanya, bagi penyedia layanan IT, SLA yang disepakati adalah 99,1% tetapi penulis tidak tahu bagaimana SLA untuk PLN.
Kalau kamu tau, bisa komentar di bawah ya!
Jika dilihat dari berapa banyak kejadian mati listrik, ternyata mulai dari tanggal 26 Agustus 2023 s.d. 23 September 2024, telah terjadi 81 kali mati listrik! Apakah PLN di daerah kamu juga sering mati listrik sesering ini?😭
Durasi Mati Listrik Kumulatif Harian
Setelah kita tau beberapa statistik kunci pada analisis SLA, tahap selanjutnya kita bisa coba melakukan analisis dari sisi durasi mati listrik. Pada contoh ini kita melihat durasi kumulatif mati listrik sepanjang tahun. Dengan visualisasi ini kita bisa melihat seberapa lama durasi mati listrik dan melihat “seberapa parah” mati listrik dalam satu hari tertentu.
Untuk melakukan analisis tersebut, kita akan menggunakan fungsi cumsum
untuk mendapatkan jumlah kumulatif dari waktu downtime kemudian kia lakukan konversi menjadi satuan jam.
|
|
|
|
Jika kita perhatikan, sekitar bulan Maret 2024 terjadi mati listrik dengan durasi yang panjang, ditandai dengan garis tegak pada bulan tersebut. Kita perlu visualisasi yang lebih ringkas untuk dapat melihat pola mati listrik ini.
Bagaimana kalau kita coba visualisasikan datanya per bulan?
Durasi Mati Listrik Kumulatif Bulanan
Untuk membantu kita memahami bagaimana perilaku mati listrik PLN, kita akan coba melakukan pengelompokkan per bulan. Informasi yang akan kita cari masih sama seperti sebelumnya, yaitu durasi kumulatif, tetapi kita juga akan menjumlahkan durasi mati listrik per bulan, mungkin kita bisa melihat apakah ada “musim mati listrik.”
|
|
Pada visualisasi kali ini kita akan membuat combo chart dengan menggabungkan diagram batang dan diagram garis menggunakan Matplotlib dan Seaborn.
Tahap pertama adalah memanggil fungsi plt.subplots
untuk mendapatkan Axis
yang nantinya akan diisi diagram. Tahap selanjutnya adalah memanggil fungsi sns.barplot
untuk membuat diagram batang, dilanjutkan dengan menambahkan label pada bagian luar batang dan memiringkan tick pada sumbu X. Tahap selanjutnya adalah membuat sumbu X baru dengan memanggil fungsi twinx
dan membuat diagram garis pada sumbu X tersebut menggunakan fungsi sns.lineplot
. Berbeda dengan sns.barplot
, pada sns.lineplot
perlu dilakukan anotasi manual menggunakan fungsi Axis.text
.
|
|
Berdasarkan grafik di atas, kita bisa identifikasi bahwa terdapat dua bulan “musim” mati listrik, yaitu bulan September dan bulan Maret, ditandai dengan durasi mati listrik di atas 20 jam. Ada apa di bulan Maret dan September? Kenapa jadi musim mati listrik?
Grafik yang sama juga menunjukkan bahwa bulan November dan Desember adalah bulan dengan total waktu mati listrik paling pendek. Pendek bukan berarti tidak ada. Artinya, selama satu tahun, PLN PASTI ada mati listrik setidaknya satu kali per bulan. Crazy🤯
Rasio Durasi dan Banyaknya Mati Listrik
Selain durasi mutlak, kita bisa coba bandingkan rasio antara durasi mati listrik dan berapa banyak mati listrik per bulan. Nilai rasio ini dapat menunjukkan bulan yang “sering mati listrik tapi sebentar” dan “jarang mati tapi sekalinya mati lama”
|
|
|
|
Pada grafik di atas, terdapat beberapa bulan yang “sering mati listrik dan sekalinya mati listrik, durasinya lama” misalnya September 2023 dan 2024 dengan jumlah kejadian mati listrik lebih dari 10 kali per bulan dan durasi lebih dari 1,8 jam. Jika dilihat pada bulan Agustus 2024, hanya terjadi satu kali mati listrik, tetapi durasinya 3,79 jam.
Mana yang lebih buruk? Sering mati atau sekalinya mati lama?😭
Key Statistics Lainnya
Berikut ini adalah beberapa pertanyaan lain dari penulis mengenai data mati listrik PLN ini.
Berapa lama durasi mati listrik paling lama?
|
|
|
|
Berapa lama durasi listrik menyala paling lama?
|
|
|
|
Berapa rata-rata dan median mati listrik?
|
|
|
|
Berapa kali rata-rata terjadi mati listrik?
|
|
|
|
Menurut kalian, apa wajar kalau listrik PLN mati 3x per bulan?😭 Atau apa wajar PLN paling lama nyala itu hanya 22 hari, setelah itu mati listrik lagi?
Penutup
Berdasarkan beberapa hasil analisis di atas, dapat kita ambil simpulan kalau layanan PLN khususnya di daerah pegunungan yang jauh dari pusat kota. Dengan rekor 81 kali mati listrik dalam kurun waktu satu tahun, semoga kedepannya PLN bisa meningkatkan layanannya agar lebih reliabel dan bisa diandalkan oleh pelanggannya,
Apalagi jika Indonesia akan bergerak mengadopsi mobil listrik (EV), maka transisi tersebut harus didukung dengan ketersediaan listrik yang memadai, bukan hanya untuk keperluan sehari-hari, tetapi juga dapat memenuhi kebutuhan untuk kendaraan listrik [2].
Referensi
- “What is an SLA? Best practices for service-level agreements,” CIO. Diakses: 15 Oktober 2024. [Daring]. Tersedia pada: https://www.cio.com/article/274740/outsourcing-sla-definitions-and-solutions.html
- Perusahaan Listrik Negara, “300 Home Charging Menyala Serentak di Jakarta, PLN Mudahkan Pengguna Mobil Listrik,” Press Release 116.PR/STH.00.01/III/2024, Apr 2024. Diakses: 15 Oktober 2024. [Daring]. Tersedia pada: https://web.pln.co.id/media/siaran-pers/2024/04/300-home-charging-menyala-serentak-di-jakarta-pln-mudahkan-pengguna-mobil-listrik