fTL;DR
Jika Anda memperbarui ke Insomnia 8.0 dan kehilangan akses ke koleksi Anda, data Anda kemungkinan besar masih ada di disk. Panduan ini menunjukkan cara menemukannya, memulihkannya dari database SQLite, dan bermigrasi dengan bersih ke Apidog atau alternatif lainnya. Lakukan tindakan sebelum menginstal pembaruan lebih lanjut yang mungkin menimpa file cadangan Anda.
Pendahuluan
Pembaruan Insomnia 8.0 yang dirilis pada bulan September 2023 mengharuskan login cloud. Bagi banyak pengguna, pembaruan ini menghasilkan kebingungan: aplikasi terbuka ke layar login, dan koleksi yang telah mereka bangun selama berbulan-bulan atau bertahun-tahun tampak hilang.
Beberapa kehilangan data adalah nyata – terutama kasus di mana penyimpanan sementara merusak data pada sistem tertentu. Namun dalam banyak kasus, file database SQLite yang mendasarinya masih utuh di disk, hanya saja tidak dapat diakses melalui UI baru tanpa akun Kong.
Panduan ini berlaku untuk kedua situasi tersebut. Jika data Anda masih ada, Anda akan mengetahui cara mengeluarkannya. Jika penyimpanan sementara benar-benar kehilangan data Anda, Anda akan mengetahui opsi pemulihan apa yang ada dan cara menghindari masalah yang sama di masa mendatang dengan bermigrasi ke alat dengan model lokal-pertama yang lebih andal.
Langkah 1: Temukan file database Insomnia Anda yang ada
Sebelum Anda melakukan hal lain – sebelum menginstal ulang, sebelum membuat akun Kong, sebelum membuka Insomnia lagi – temukan file database Anda yang ada dan salin ke lokasi yang aman.
Insomnia menyimpan data di lokasi yang berbeda tergantung pada versi dan sistem operasi.
macOS:
~/Library/Application Support/Insomnia/
Windows:
C:\Users\[Nama Pengguna]\AppData\Roaming\Insomnia\
Linux:
~/.config/Insomnia/
Di dalam direktori tersebut, cari file-file ini:
insomnia.db– database utama (versi lama)- Direktori bernama
core/yang berisi file.db– umum di versi sebelum 8.0 workspaces/– mungkin berisi file JSON yang diekspor dari ekspor sebelumnya
Salin seluruh direktori dukungan aplikasi Insomnia ke lokasi cadangan sekarang. Jangan lewatkan langkah ini. Jika Anda menjalankan pembaruan lebih lanjut atau menghapus/menginstal ulang Insomnia, ada risiko file-file ini ditimpa atau dihapus.
Langkah 2: Coba pemulihan melalui UI Insomnia
Jika Anda belum login ke akun Kong, coba jalur penyimpanan sementara terlebih dahulu. Saat Insomnia menampilkan layar login, cari tautan atau tombol yang bertuliskan "Gunakan tanpa akun" atau "Lanjutkan dengan penyimpanan lokal." Kata-kata yang tepat telah berubah di berbagai versi.
Jika Anda bisa masuk ke aplikasi tanpa login, segera ekspor setiap workspace:
- Klik nama workspace di bilah sisi kiri
- Pergi ke menu workspace (tiga titik atau ikon roda gigi)
- Pilih "Ekspor"
- Pilih format "Insomnia v4 (JSON)"
- Simpan file di tempat yang aman
- Ulangi untuk setiap workspace
Jika Anda sudah memiliki akun Kong dan dapat login, lakukan proses ekspor yang sama. Pengalaman login memberi Anda akses ke workspace yang disinkronkan, yang mungkin lebih lengkap daripada yang ada di disk jika Anda telah melakukan sinkronisasi sebelumnya.
Langkah 3: Pulihkan data langsung dari database SQLite
Jika UI tidak memberi Anda akses ke data Anda, Anda dapat mengekstraknya langsung dari file database. Ini memerlukan alat browser SQLite gratis.
Instal DB Browser for SQLite. Unduh dari sqlitebrowser.org. Ini gratis, open source, dan tersedia untuk macOS, Windows, dan Linux.
Buka file database Anda. Di DB Browser, buka File > Open Database dan navigasikan ke direktori dukungan aplikasi Insomnia. Buka insomnia.db atau file .db apa pun yang Anda temukan di sana.
Jelajahi skema. Database Insomnia memiliki beberapa tabel yang perlu Anda perhatikan:
Workspace– workspace tingkat atas AndaRequestGroup– folder di dalam workspaceRequest– permintaan individualEnvironment– set variabel lingkunganResponse– riwayat respons yang tersimpan (opsional untuk dipulihkan)
Ekspor data. Di tab Browse Data, pilih setiap tabel dan gunakan File > Export > Table as CSV untuk menyimpan data mentah. Untuk permintaan, bidang kunci adalah name, url, method, headers (disimpan sebagai JSON), dan body.
Rekonstruksi koleksi. Pendekatan CSV memberi Anda data mentah untuk dibangun kembali. Ini membosankan tetapi dapat diandalkan. Untuk pendekatan terprogram, Anda dapat menggunakan modul sqlite3 Python untuk membuat kueri database dan menulis skrip ekspor.
Berikut adalah skrip Python minimal untuk mengekstrak permintaan dari database Insomnia yang lebih lama:
import sqlite3
import json
conn = sqlite3.connect('/path/to/insomnia.db')
cursor = conn.cursor()
cursor.execute("SELECT name, url, method, headers, body FROM Request")
rows = cursor.fetchall()
for row in rows:
print(f"Name: {row[0]}")
print(f"Method: {row[2]} {row[1]}")
if row[3]:
headers = json.loads(row[3])
for h in headers:
print(f" Header: {h.get('name')}: {h.get('value')}")
print()
conn.close()
Sesuaikan nama bidang berdasarkan apa yang Anda lihat di DB Browser – skema pastinya bervariasi di berbagai versi Insomnia.
Langkah 4: Pulihkan dari cadangan jika database rusak
Jika file database itu sendiri rusak, pilihannya lebih terbatas.
Periksa Time Machine atau cadangan sistem. macOS Time Machine, Windows File History, dan sebagian besar layanan cadangan cloud (Backblaze, iCloud Drive, dll.) mungkin memiliki snapshot direktori Insomnia Anda dari sebelum pembaruan. Pulihkan versi pra-8.0 dari direktori dukungan aplikasi ke lokasi terpisah, lalu gunakan DB Browser untuk membaca file-file tersebut.
Periksa riwayat git. Beberapa tim versi ekspor Insomnia mereka dalam repositori git. Jika organisasi Anda melakukan ini, file ekspor dapat dipulihkan dari riwayat git.
Cari file ekspor Insomnia. Jika Anda pernah secara manual mengekspor koleksi di masa lalu, file JSON tersebut mungkin ada di folder Unduhan Anda atau direktori proyek. Cari di sistem file Anda untuk file yang berakhiran .json yang berisi "insomnia" atau "_collection" di namanya.
Langkah 5: Migrasi ke Apidog
Setelah Anda memiliki data Anda dalam format JSON Insomnia v4 (baik dari ekspor UI atau direkonstruksi secara manual), bermigrasi ke Apidog hanya membutuhkan beberapa menit.
Impor koleksi Anda.
- Buka Apidog dan buat proyek baru
- Pergi ke pengaturan proyek atau opsi impor di bilah sisi
- Pilih "Impor" dan pilih "Insomnia"
- Unggah file JSON yang diekspor
- Apidog akan menguraikan workspace, folder, permintaan, dan lingkungan
Apa yang dapat ditransfer dengan bersih:
- Permintaan HTTP (GET, POST, PUT, DELETE, PATCH)
- Header permintaan
- Isi permintaan (JSON, data formulir, multipart)
- Parameter URL dan variabel jalur
- Variabel lingkungan dan nilainya
- Struktur folder
Apa yang memerlukan peninjauan manual:
- Skrip pra-permintaan dan pasca-permintaan (JavaScript). Apidog menggunakan model scripting serupa tetapi sintaksisnya mungkin perlu penyesuaian.
- Alur autentikasi kustom yang bergantung pada plugin Insomnia
- Pernyataan pengujian respons – ini perlu dimasukkan kembali dalam format pengujian Apidog
Siapkan lingkungan Anda. Setelah impor, periksa apakah variabel lingkungan diimpor dengan benar. Pergi ke panel Lingkungan dan verifikasi URL dasar, kunci API, dan token apa pun yang ditransfer.
Verifikasi akses tim. Jika Anda memigrasikan workspace tim, Apidog mendukung workspace bersama dengan sinkronisasi cloud opsional. Anda mengontrol apakah data disinkronkan ke cloud Apidog. Untuk tim, mengaktifkan sinkronisasi sekali adalah cara termudah untuk berbagi koleksi yang dimigrasikan.
Uji beberapa permintaan. Pilih lima atau enam permintaan representatif dari koleksi Anda dan jalankan untuk mengkonfirmasi bahwa mereka bekerja seperti yang diharapkan. Perhatikan header autentikasi dan substitusi variabel lingkungan.
Menghindari masalah ini di masa mendatang
Pelajaran inti dari situasi Insomnia 8.0 adalah bahwa mempercayakan data kerja penting Anda ke satu alat tanpa strategi cadangan adalah berisiko – terlepas dari alat apa yang Anda gunakan.
Beberapa kebiasaan yang melindungi Anda di masa mendatang:
Ekspor secara teratur. Jadwalkan ekspor bulanan koleksi Anda ke folder cadangan atau repositori git. Ini membutuhkan waktu dua menit dan memberi Anda jalur pemulihan apa pun yang terjadi.
Pilih alat lokal-pertama. Apidog menyimpan data secara lokal secara default. Bruno menyimpan koleksi sebagai file biasa di disk. Keduanya memungkinkan Anda melihat dan mencadangkan data Anda tanpa bergantung pada cloud vendor.
Periksa model data sebelum meningkatkan. Ketika versi utama dirilis, baca catatan migrasi sebelum memperbarui. Jika rilis mengubah tempat atau cara data disimpan, pahami implikasinya sebelum mengklik instal.
FAQ
Bisakah saya memulihkan data Insomnia tanpa login ke Kong?Ya, jika file database Anda masih ada di disk. Gunakan DB Browser for SQLite untuk membuka file .db di direktori dukungan aplikasi Insomnia Anda dan ekspor data dari tabel secara langsung.
Format apa yang harus saya gunakan saat mengekspor data Insomnia?Gunakan format JSON Insomnia v4. Ini adalah format yang paling banyak didukung dan dapat diimpor oleh Apidog, Postman, dan alat lainnya.
Apakah variabel lingkungan saya akan ditransfer ke Apidog?Dalam banyak kasus ya. Lingkungan Insomnia diekspor sebagai bagian dari format JSON v4 dan Apidog mengimpornya. Tinjau lingkungan yang diimpor untuk mengkonfirmasi nilai sudah benar, terutama untuk token sensitif.
Apa perbedaan antara penyimpanan sementara Insomnia dan penyimpanan lokal di alat lain?Penyimpanan sementara Insomnia adalah mode cadangan dengan masalah keandalan. Apidog dan Bruno memperlakukan penyimpanan lokal sebagai model utama, bukan cadangan. Data ditulis ke disk pada setiap penyimpanan, tidak disimpan di memori.
Bisakah saya menggunakan DB Browser for SQLite di macOS?Ya. DB Browser for SQLite tersedia untuk macOS melalui situs web proyek dan melalui Homebrew (brew install db-browser-for-sqlite).
Berapa lama migrasi dari Insomnia ke Apidog?Untuk koleksi tipikal 50-200 permintaan, impor membutuhkan waktu kurang dari lima menit. Meninjau dan menyesuaikan skrip dan alur autentikasi bisa memakan waktu lebih lama tergantung pada kompleksitasnya.
