T1 672005063 Full Tex
Bab 1
Pendahuluan
1.1
Latar Belakang Masalah
Perkembangan teknologi dan internet di dunia perusahaan
berperan penting dalam kemajuan kinerja dalam perusahaan itu
sendiri. Keberadaan internet juga dibutuhkan untuk berkomunikasi
dengan perusahaan terkait atau antar cabang. Suatu perusahaan
membutuhkan penggunaan internet untuk pengaksesan kebutuhan
yang diperlukan oleh setiap karyawan. Fasilitas seperti internet
dalam perusahaan bisa dipergunakan dengan baik untuk kebutuhan
dan kepentingan yang bisa menunjang kepentingan perusahaan.
Hasil pengamatan penelitian, perusahaan tidak dapat mengawasi
pengaksesan internet setiap karyawannya.
Penggunaan internet diharapkan bisa menjadi penunjang
segala kegiatan dalam dunia kerja dan bisa memberikan keuntungan
untuk perusahaan. Kantor mempunyai peraturan dalam pengaksesan
website yang tidak diperkenankan antara lain social network seperti
facebook, twitter, dan website lamaran kerja. Tersedianya sistem
untuk mengetahui informasi alamat website yang diakses oleh para
karyawan akan memberikan informasi kepada perusahaan sebagai
pengawasan dan pengendalian penggunaan internet. Menurut Aji
sebagai staff IT jaringan dalam kantor CV Sukses Jaya Utama
(2012), membutuhkan sistem monitoring jaringan untuk mengetahui
informasi website yang diakses.
1
2
Dari pertimbangan di atas, dapat ditarik kesimpulan untuk
merancang suatu sistem yang dapat mengetahui penggunaan internet
di Kantor CV Sukses Jaya Utama. Sistem ini diharapkan bisa
membantu
perusahaan
mengawasi
penggunaan
internet
karyawannya. Penggunakan sistem monitoring acces.log suatu
server yang berfungsi sebagai router selama ini baru berjalan di
linux. Aplikasi atau sistem tersebut bernama SARG. Pada aplikasi
SARG, untuk melakukan setting dapat dilakukan dengan melakukan
perubahan source code sesuai dengan tujuan yang diinginkan dan
tidak semua orang dapat melakukannya dengan mudah.
Perancangan
sebuah
sistem
yang
dapat
mengetahui
penggunaan akses internet di Kantor CV Sukses Jaya Utama tersebut
berjudul “Perancangan dan Implementasi Aplikasi Analisis File
Access.Log Squid Berbasis Desktop”. Sistem yang dirancang
diharapkan dapat menghasilkan analisis access.log yang berjalan di
windows
serta mudah digunakan oleh pengguna. Sistem ini
diharapkan manajemen dapat mengetahui data penggunaan internet
di perusahaan tersebut dengan mudah sehingga dapat dijadikan
sebagai salah satu pertimbangan dalam pengambilan keputusan oleh
pihak manajemen yang terkait dengan penggunaan internet. Sistem
ini akan menyajikan analisa penggunaan internet baik per ip ataupun
pada semua ip dalam suatu jaringan dalam bentuk grafik dan angka.
Perusahaan atau instansi yang dipilih menjadi tempat
penilitian ini adalah kantor CV Sukses Jaya Utama. Perusahaan ini
berfungsi dalam pembuatan rokok dan distribusi yang terletak di Jln.
Raya Salatiga-Muncul Km 4, Dsn. Padaan Gedangan, Tuntang, Kab.
Semarang.
3
1.2
Rumusan Masalah
Berdasarlan latar belakang yang dikemukakan di atas, maka
rumusan masalah dari penelitian ini sebagai berikut :
a. Bagaimana
merancang
suatu
aplikasi
yang
mampu
menganalisis file access.log squid ?
b. Bagaimana mengimplimentasikan aplikasi tersebut di atas
dengan bahasa pemrograman Visual C# ?
c. Bagaimana merancang aplikasi yang dapat memberikan
informasi berupa situs-situs yang telah diakses oleh tiap IP
Address dan alamat IP mana sajakah yang telah mengakses
suatu situs tertentu ?
d. Bagaimana merancang aplikasi yang mampu mencari alamat
IP yang telah mengakses situs atau alamat URL yang telah
dilarang oleh pihak manajemen ?
1.3
Tujuan dan Manfaat
Tujuan dari penelitian ini antara lain :
a. Merancang suatu aplikasi yang mampu menganalisis file
access.log squid
b. Mengimplimentasikan aplikasi tersebut di atas dengan
bahasa pemrograman Visual C#
c. Merancang aplikasi yang dapat memberikan informasi
berupa situs-situs yang telah diakses oleh tiap IP Address dan
alamat IP mana sajakah yang telah mengakses suatu situs
tertentu
4
d. Merancang aplikasi yang mampu mencari alamat IP yang
telah mengakses situs atau alamat URL yang telah dilarang
oleh pihak manajemen
Sedangkan manfaat penelitian ini antara lain :
a. Bagi perusahaan atau pengguna
Penelitian ini bermanfaat untuk staff IT mendeteksi IP
Address yang mengakses alamat URL yang dilarang untuk
selanjutnya bisa digunakan sebagai pengawasan dan kontrol
penggunaan internet di Kantor CV Sukses Jaya Utama untuk
pertimbangan dalam pengambilan keputusan oleh pihak
manajemen yang terkait dengan penggunaan internet
b. Bagi masyarakat
Sebagai alternatif untuk monitoring internet access.log squid
c. Bagi akademik
Sebagai
bahan
pembelajaran
pemrograman
yang
menggunakan framework .NET version 4
1.4
Batasan Masalah
Batasan pembahasan dalam penelitian ini antara lain:
a. Aplikasi ini hanya berjalan di platform Windows.
b. Aplikasi hanya memonitor URL / website yang dituju, ip
address, lama waktu mengakses, total bit transferred, dan
hit.
c. Output berupa table dan grafik pie.
d. Besar File Access.log memperngaruhi kecepatan proses
monitoring.
5
1.5
Sistematika Penulisan
Sistematika penulisan skripsi ini diuraikan dalam lima bab
secara terpisah, yaitu :
BAB I
PENDAHULUAN
Dalam bab ini diuraikan tentang latar belakang masalah,
rumusan masalah, tujuan dan manfaat, batasan masalah atau ruang
lingkup dan sistematika penulisan.
BAB II
TINJAUAN PUSTAKA
Dalam bab ini diuraikan tentang penelitian terdahulu dan
landasan teori.
BAB III METODE PENELITIAN
Dalam
bab
ini
diuraikan
tentang
langkah-langkah
perancangan aplikasi yang dibuat sehingga menghasilkan aplikasi
yang mampu memonitor file access.log squid.
BAB IV HASIL DAN PEMBAHASAN
Dalam bab ini diuraikan tentang hasil dan pembahasan yang
sifatnya terpadu tentang monitoring access.log squid guna
mengetahui 10 besar situs yang dikunjungi.
BAB V
PENUTUP
Dalam bab ini diuraikan tentang kesimpulan dan saran untuk
pengembangan penelitian berikutnya.
6
Bab 2
Tinjauan Pustaka
2.1
Penelitian Terdahulu
Dalam penelitian sebelumnya yang berjudul “ Algoritma
Apriori Pada Internet Access Log Dan Implementasinya ”, analisis
access.log untuk mengetahui pola penggunaan internet yang biasa
dilakukan komunitas pengguna internet di suatu perguruan tinggi .
Pada penelitian tersebut dapat dipantau besarnya arus byte yang
masuk, identitas pengguna, tujuan, dan sebagainya. Pada penelitian
tersebut
telah
diimplementasikan
algoritma
apriori
untuk
mendapatkan informasi halaman web yang diakses oleh suatu
pengguna internet. Aplikasi yang dirancang pada penelitian
tersebuat menggunakan bahasa pemrograman Delphi (Bahtiar,
2010).
Penelitian terdahulu yang berjudul “Sistem Rekomendasi
Katalog Produk Online Menggunakan Metode Association Rule
dengan
Algoritma
Fold-Growth”,
sistem
rekomendasi
yang
didasarkan pada data akses user yang terdapat pada server atau biasa
disebut dengan access.log. Metode yang digunakan adalah
association rule dengan algoritma fold-growth (Hendy, 2011).
Perbedaan dengan penelitian yang hendak dilakukan dengan
penelitian terdahulu terletak pada perangkat lunak yang digunakan.
Perancangan
dan
Access.Log
Squid
Implementasi
Berbasis
Sistem
Desktop
Monitoring
Internet
menggunakan
bahasa
pemrograman Visual C#. Aplikasi ini bertujuan untuk mengetahui
10 besar situs yang diakses oleh pengguna internet di kantor CV
7
8
Sukses Jaya Utama dan 10 besar situs yang dikunjungi oleh suatu
alamat ip tertentu.
2.2
Bahasa Pemrograman C#
C# merupakan bahasa pemrograman object-oriented seperti
java dan merupakan component-oriented yang pertama kali
dikembangkan. Bahasa pemrograman C# dibuat sebagai bahasa
pemrograman yang bersifat general-purpose yang berorientasi
objek, modern, dan sederhana. Bahasa pemrograman C# juga
ditujukan dalam menggembangkan komponen perangkat lunak yang
mampu mengambil keuntungan dari lingkungan yang terdistribusi,
baik dari segi client-server maupun sistem embedded (Deitel, 2002).
Bahasa pemrograman C# memiliki sifat sebagai berikut :
•
C# adalah sebuah bahasa pemrograman baru yang diturunkan
dari bahasa pemrograman C atau C++
•
Sintaks pada C# lebih sederhana dan lebih modern daripada
C++
•
Merupakan bahasa component-oriented yang pertama
•
Merupakan bahasa yang didesain dari .Net Framework
•
Mengkombinasikan fitur-fitur terbaik dari banyak bahasa
yang umum digunakan seperti produktivitas dari Visual
Basic dan kekuatan dari C++ dan Java
•
2.3
C# menjadi pilihan bahasa pemrograman .Net
Internet
Internet berasal dari kata interconection networking yang
mempunyai hubungan berbagai komputer dan berbagai tipe
9
komputer yang membentuk sistem jaringan yang mencakup seluruh
dunia (jaringan global) dengan melalui jalur telekomunikasi seperti
telepon, wireless dan lainnya. Internet juga dapat digambarkan
sebagai kota elektronik berukuran raksasa, dimana setiap penduduk
memiliki alamat masing-masing (internet address) yang dapat
digunakan
untuk
berkirim
surat.
Pengguna
internet
dapat
menjangkau semua orang dari berbagai usia dan melalui internet
pula orang dapat berkomunikasi serta mendapatkan informasi secara
on-line dan real-time (Sutarman, 2003).
2.4
Internet Protocol Address (IP Address)
IP (Internet Protocol) address adalah deretan angka yang
dipakai sebagai alamat identifikasi untuk tiap komputer host dalam
jaringan internet. Setiap IP itu sendiri memiliki beberapa bagian
serta tipe-tipe kelas yang berbada-beda, dan dapat dipisahkan
menjadi dua bagian, yakni bagian network (net ID) dan bagian host
(host ID). Net ID berperan dalam identifikasi suatu network dari
network yang lain, sedangkan host id berperan untuk identifikasi
host yang tersambung dalam jaringan yang memiliki net ID sama.
Sebagian dari bit-bit bagian awal dari IP address merupakan
network bit/network number, sedangkan sisanya untuk host. Garis
pemisah antara bagian network dan host tidak tetap, bergantung
kepada kelas network (Sofana, 2008).
2.5
Router
Router adalah perangkat yang akan melewatkan IP dari suatu
jaringan ke jaringan yang lain, menggunakan metode addressing dan
10
protocol tertentu untuk melewatkan paket data tersebut. Router
memiliki kemampuan melewatkan paket IP dari satu jaringan ke
jaringan lain yang mungkin memiliki banyak jalur diantara
keduanya. Router-router yang saling terhubung dalam jaringan
internet turut serta dalam sebuah algoritma routing terdistribusi
untuk menentukan jalur terbaik yang dilalui paket IP dari system ke
system lain. Proses routing dilakukan secara hop by hop. IP tidak
mengetahui jalur keseluruhan menuju tujuan setiap paket. IP routing
hanya menyediakan IP address dari router berikutnya yang
menurutnya lebih dekat ke host tujuan (Herlambang, 2008).
2.6
Squid
Squid merupakan mesin caching proxy untuk klien web,
seperti HTTP, HTTPS, FTP, gopher dan layanan sejenis lainnya.
Squid
mampu
menurunkan
konsumsi
bandwidth
sekaligus
mempercepat waktu respons. Terwujudkan dengan melakukan
caching web dan menggunakan ulang halaman yang sering
dikunjungi. Squid memiliki setumpuk kendali akses yang dapat
mendukung kecepatan server, dan mampu menangai semua request
melalui sebuah proses input atau output (Rafiudin, 2008).
Squid adalah sebuah daemon yang digunakan sebagai proxy
server dan web cache. Squid memiliki banyak jenis penggunaan,
mulai dari mempercepat server web dengan melakukan caching
permintaan yang berulang-ulang, caching DNS, caching situs web,
dan caching pencarian komputer di dalam jaringan untuk
sekelompok komputer yang menggunakan sumber daya jaringan
yang sama, hingga pada membantu keamanan dengan cara
11
melakukan penyaringan (filter) lalu lintas. Meskipun seringnya
digunakan untuk protokol HTTP dan FTP, Squid juga menawarkan
dukungan terbatas untuk beberapa protokol lainnya termasuk
Transport Layer Security (TLS), Secure Socket Layer (SSL),
Internet Gopher, dan HTTPS. Pekerjaan Squid adalah untuk menjadi
proxy dan cache. Sebagai proxy, squid perantara dalam transaksi
web. Ia menerima permintaan dari klien, memproses permintaan itu,
dan kemudian meneruskan permintaan ke server asal. Permintaan
dapat dicatat, ditolak, dan bahkan dimodifikasi sebelum diteruskan
(Wessels, 2004).
Squid pada awalnya dikembangkan oleh Duane Wessels
sebagai "Harvest object cache", yang merupakan bagian dari proyek
Harvest yang dikembangkan di University of Colorado at Boulder.
Pekerjaan selanjutnya dilakukan hingga selesai di University of
California, San Diego dan didanai melalui National Science
Foundation. Squid kini hampir secara eksklusif dikembangkan
dengan cara usaha sukarela. Squid umumnya didesain untuk berjalan
di atas sistem operasi mirip Unix, meski Squid juga bisa berjalan di
atas sistem operasi Windows. Squid dirilis di bawah lisensi GNU
General Public License (Wessels, 2004).
12
Gambar 2.1 Squid di an
ntara Clients dan
d Servers (W
Wessels, 2004)
Seperti ditunjukkan pada gaambar 2.1, Squid mennerima
perrmintaan HT
TTP (dan HT
TTPS) dari klien, dan bbertukar sejumlah
info
ormasi darii protokol ke server. Secara khuusus, Squidd tahu
bag
gaimana carranya tersam
mbung deng
gan HTTP, FTP, dan server
Gop
pher. Secaraa konseptuaal, Squid meemiliki dua sisi. Pembiccaraan
sisii klien ke kliien web (missalnya browsser dan agenn-pengguna)), serta
pem
mbicaraan siisi server un
ntuk HTTP, FTP, dan sserver Gopher. Ini
diseebut server asal, karen
na mereka adalah
a
lokassi asal untukk data
yan
ng mereka laayani (Wesseels, 2004).
2.7
7
Objectt Caching Internet
I
Object caching
c
tidaak lain salah
h satu jalan uuntuk menyyimpan
atau
u mengolek
ksi objek in
nternet, sem
misal data-ddata HTTP, FTP,
Gop
pher, dalam
m sebuah sisteem lokal, seehingga akann lebih mudaah dan
lebih dekat bagi
b
penggu
una daripad
da harus m
mengambil objek
langsung dari sumbernya.. Browser web
w akan ddengan senddirinya
men
nggunakan cache squ
uid lokal sebagai proxxy server HTTP
(Raafiudin, 2008
8). Lebih jelaasnya dapat dilihat padaa Gambar 2.22.
13
Gambar 2.2
2 Relations Clients,
C
Proxy, dan Server (Raafiudin, 2008)
Proxy server adalah
h server yan
ng menjembaatani klien ddengan
servver gatewayy sebelum berkomunik
b
kasi dengan internet. M
Melalui
pro
oxy server, maka
m
situs-ssitus yang sering
s
dikunnjungi akan terasa
sem
makin cepat diakses usser, karena telah disim
mpan dalam cache
pro
oxy. Selain itu proxy server
s
juga berfungsi untuk melaakukan
oten
ntikasi userr, memblokirr situs-situs tertentu, m
memblokir banner,
dan
n sebagainyaa (Rafiudin, 2008).
2
2.8
8
File Acccess.log
Log meerupakan su
umber inforrmasi yang berharga teentang
kin
nerja dan peerformansi Squid
S
karen
na log tidakk hanya meerekam
info
ormasi sepu
utar akses, tetapi juga merekam eerror pada sistem
kon
nfigurasi dan
n konsumsi sumber daaya (misalnyya: memori,, spasi
disk
k). Squid memiliki
m
beraagam file log
g, yang bebberapa diantaaranya
harrus segera diaktivasi
d
seelama Squid
d berjalan. T
Terdapat bebberapa
14
poin umum untuk semua file log squid. Informasi timestamp yang
dicatat dalam setiap file log biasanya dalam format detik UTC, dan
timestamp inisial biasanya memuat ekstensi milidetik (millisecond).
Squid mencatat dan menggolongkan log dalam file yang berbeda.
Salah satu diantaaranya adalah file acces.log. Mulai Squid 2.6
mengizinkan administrator melakukan konfigurasi sendiri format file
log mereka, dengan flexibilitas yang luas dari versi sebelumnya.
Versi sebelumnya mengijinkan kita mencatat akses, baik dalam
format log baku (native) atau menggunakan format CLF, yang
diaktifkan dengan cara mengeset opsi emulate_httpd_log dalam file
konfigurasi squid.conf (Rafiudin, 2008).
2.8.1
Format Log CLF (Common Log File)
Format CLF digunakan oleh banyak server HTTP, yang
terdiri dari tujuh field :
remotehost rfc931 authuser [date] “method URL” status bytes
Format log CLF banyak diproses oleh beragam tool atau
program lain, dan memuat informasi lebih beragam dibanding
dengan format log native. Misalnya, versi HTTP dicatat oleh CLF,
tetapi tidak oleh file log native.
2.8.2
Format Log Native
Format native berbeda-beda untuk setiap versi utama squid,
dengan format squid-1.0 adalah :
time elapsed remotehost code/status/peerstatus bytes method URL
untuk squid-1.1, informasi dari hierarchy.log telah dipindahkan ke
access.log, dengan format:
time elapsed remotehost code/status bytes method URL rfc931
peerstatus/peerhost type
15
untuk squid-2, kolom tetap sama tetapi isinya sedikit berbeda.
Format log native me-log atau mencatat jenis informasi yang sedikit
berbeda dari CLF, seperti: durasi request, informasi timeout, address
server upstream berikutnya, dan jenis konten (content type). Tool
melakukan konversi informasi dari format file log ini. Namun
demikian, meskipun format log mengungkap banyak informasi,
beberapa informasi bukanlah merupakan bagian format lainnya,
sehingga bagian tersebut dapat dibuang saat dikonversi. Terlebih
lagi akan banyak kehilangan informasi saat dilakukan konversi
balik. Squid2common.pl termasuk salah satu tool atau utilitas
konversi, yang mampu mengonversi format file log squid ke bentuk
output proxy CERN tipe lama.
Format log native squid sangat dianjurkan untuk digunakan
karena dapat memberikan ragam informasi lebih banyak dan
bermanfaat untuk kepentingan monitoring lebih lanjut. Baris print
dari format native access.log terdiri dari entri berikut:
“%9d.%03d %6d %s %s/%03d %d %s %s %s %s %s/%s %s”
Sebuah entri access.log terdiri dari 10 kolom, masing-masing
dipisahkan oleh spasi kosong:
Tabel 2.1 Detail Format Log Native Access.log
Kolom
Deskripsi
1. time
Informasi waktu (timestamp) dalam detik UTC,
dengan resolusi milidetik.
2. duration
Durasi waktu dalam milidetik transaksi yang
menyibukkan chace. Nilai ini berbeda dengan
interprestasi TCP dan UDP:
•
Pada HTTP, merupakan respon waktu antara
16
penerimaan request sampai squid selesai
mengirim byte terakhir.
•
ICP,
Pada
merupakan
waktu
antara
penjadwalan reply dan pengiriman aktual.
3. client
Ip address klien yang me-request.
address
4. result code
Kode keluaran.
Kolom ini terdiri dari dua entri yang dipisahkan
tanda slash. Keluaran cache dari sebuah request
yang
memuat
informasi
seputar
request
tersebut, dipenuhi atau gagal.
5. bytes
Ukuran byte data, yaitu jumlah byte data yang
dihantarkan ke klien.
6. request
Metode request untuk mendapatkan objek.
7. URL
Memuat
URL
yang
di-request. File
log
mungkin memuat spasi kosong untuk URL.
8. rfc931
Kolom ini memuat lookup ident untuk klien
yang
me-request.
Lookup
ident
dapat
mempengaruhi performansi, maka konfigurasi
default
ident_lookups
untuk
dinonaktifkan
sehingga informasi ident tidak akan tersedia dan
hanya akan terlihat tanda “-”.
9. hierarchy
code
Informasi hirarki (hierarchy) terdiri dari tiga
jenis item:
•
Tag
hierarchy
TIMEOUT_,
jika
akan
diawali
timeout
dengan
terjadi
saat
menunggu reply ICP komplit dari neighbor.
17
•
Sebuah
kode
menjelaskan
akan
diberikan
untuk
request
ditangani,
misal
dengan meneruskan ke sebuah peer atau
pergi kembali ke sumbernya.
•
IP address atau hostname dimana request
telah di-forward (jika terjadi kegagalan).
Untuk request yang dikirim ke server asal,
maka nilainya adalah IP address server
bersangkutan. Untuk request yang dikirim
ke cache neighbor, maka nilainya berupa
hostname neighbor tersebut.
10.type
Jenis
(content
konten
type)
dari
objek,
sebagaimana terlihat dari header reply HTTP.
Pertukaran ICP yang tidak memiliki content
type, maka di-log sebagai “-”, dan beberapa
jenis reply memberikan content type “:” atau
bahkan kosong. Terdapat dua kolom atau lebih
dalam
access.log
jika
(log_mine_headers) diaktifkan.
opsi
debug
18
BAB 3
Meetode dan
n Perancangan Siistem
3.1
1
Metod
de Pengem
mbangan Sistem
S
Metode pengembaangan sisteem yang ddigunakan dalam
pen
nelitian ini adalah
a
meto
ode waterfalll, karena m
model yang paling
ban
nyak dipakaii di dalam So
oftware Engiineering. Sepperti digambbarkan
pad
da gambar 3.1 metod
de waterfalll merupakaan metode yang
mellakukan peendekatan secara
s
sistem
matis dan urut mulaii dari
ting
gkatan kebuttuhan sistem
m lalu menujju ke tahap analisa kebuutuhan
sisttem, desain
n sistem daan perangkaat lunak, iimplementassi dan
pen
ngujian, inteegrasi dan peengujian sisstem, serta ppengoperasiaan dan
perrawatan sisteem.
Secara umum tahaapan prosess (phase) yyang terjadii pada
mettode waterfa
all (Sommerv
ville, 2000) digambarkaan sebagai beerikut:
Ga
ambar 3.1 Mo
odel Waterfall (Sommerville,
(
2000)
19
20
Berikut adalah penjelasan langkah-langkah model waterfall:
1. Analisis dan definisi kebutuhan
Pada tahap ini dilakukan analisa kebutuhan sistem yaitu
mencari kebutuhan sistem dengan mewawancarai salah satu staff
dari kantor CV Sukses Jaya Utama dan mengumpulkan data yang
dibutuhkan, kemudian dianalisis dan didefinisikan kebutuhan yang
harus dipenuhi oleh aplikasi yang dibangun.
2. Perancangan sistem dan perangkat lunak
Tahapan ini adalah tahapan untuk menentukan desain
keseluruhan sistem dan desain aplikasi yang dibangun. Sebuah
proses terjadi di tahap ini, dimana semua kebutuhan yang telah
dirangkum pada tahap requirements definition dibagi-bagi ke dalam
bagiannya menjadi sistem perangkat lunak dan perangkat keras.
Selanjutnya proses ini akan menghasilkan sebuah arsitektur sistem
keseluruhan.
3. Implementasi dan pengujian unit
Pada tahapan ini desain aplikasi diterjemahkan ke dalam
kode-kode dengan menggunakan bahasa pemrograman yang sudah
ditentukan sebelumnya. Selanjutnya unit sistem yang telah selesai
dibangun akan diuji untuk menghasilkan suatu keluaran unit yang
sempurna.
4. Integrasi dan pengujian sistem
Tahap ini melakukan penggabungan seluruh bagian dari
sistem yang sudah dibuat kemudian dilakukan pengujian sistem
secara keseluruhan. Pengujian dilakukan untuk mengetahui apakah
masih terdapat kesalahan atau tidak pada sistem.
21
5. Operasii dan pemelih
haraan sistem
m
Pada baagian ini merupakan
m
tahap
t
terakhhir dalam m
metode
watterfall. Sisttem yang sudah jadi dijalankan serta dilaakukan
pem
meliharaan.
Pemeliharraan
termaasuk
dalam
m
mempeerbaiki
kessalahan yang
g tidak ditem
mukan pada langkah-lanngkah sebeluumnya
sertta peningkattan kinerja dari
d sistem seebagai kebuttuhan baru.
3.2
2
Analissis dan Definisi Kebutuhan
Tahapan
n analisis dan
d definisi kebutuhan sistem diguunakan
unttuk mengetaahui dan meenerjemahkaan semua peermasalahann serta
keb
butuhan peraangkat lunak
k yang akan dibangun aagar sesuai ddengan
keb
butuhan pen
ngguna peraangkat lunak
k. Pada tahhap ini dilaakukan
pen
ngumpulan data-data yaang dibutuh
hkan oleh ssistem. Darii hasil
waw
wancara kep
pada staff IT
T dan observaasi, didapatkkan data-dataa yaitu
topologi jaring
gan kantor tersebut dan
d
access.llog squid. Lebih
jelaasnya topolo
ogi jaringan dapat
d
dilihatt pada Gambbar 3.2.
Gambarr 3.2 Topologi Jaringan Kanttor CV Sukses Jaya Utama
22
Pada Gambar 3.2 dijelaskan jaringan di kantor CV Sukses
Jaya Utama. Kantor tersebut mendapatkan akses internet melalui
jalur fiber optic. Dari kabel fiber optic keluar output kabel utp
dengan rj45 melalui modem / bridge / converter, lalu kabel tersebut
masuk ke router melalui eth0. Pada router tersebut disetting PPPoE
dan limiter sebagai bandwith management untuk mengalokasikan
pembagian bandwith sesuai dengan kebutuhan tiap-tiap bagian atau
client.
Eth1 pada router mikrotik disambungkan ke swith hub,
kemudian disalurkan ke client pada 9 departemen atau bagian, yaitu:
-
Akuntansi
-
Keuangan
-
Pemasaran
-
Pembelian
-
Hukum
-
SDM
-
Umum
-
Operasional
Terdapat satu port lagi dari switch hub disalurkan ke wireless
access point untuk dikoneksi point-to-pointkan pada kantor cabang
produksi melalui media wireless. Pada kantor cabang produksi
tersebut dihubungkan ke switch hub untuk kemudian diteruskan ke
PC pada tiap-tiap bagian.
Eth2
router
mikrotik
pada
jaringan
kantor
tersebut
dihubungkan ke VPN server. Untuk eth3 dihubungkan pada squid
yang di sini digunakan untuk monitoring dan merekam access.log
dari pemakaian internet di kantor tersebut, yang selanjutnya akan
23
dianalisis sehingga akan diperoleh informasi situs atau website yang
diakses komputer-komputer pada jaringan kantor tersebut.
Setelah
kebutuhan
atau
data-data
didapat,
kemudian
dilakukan analisa kebutuhan secara lebih detail.
3.2.1 Analisa Kebutuhan Pengguna
Kebutuhan ini terdapat satu orang pengguna atau user yaitu
staff IT. Staff IT merupakan seseorang yang bertanggung jawab atas
semua jaringan LAN komputer-komputer di kantor CV Sukses Jaya
Utama.
3.2.2 Analisa Kebutuhan Fungsional
Sistem ini berfungsi untuk menyajikan analisa penggunaan
internet baik per ip ataupun pada semua ip dalam suatu jaringan
dalam bentuk grafik dan angka.
3.2.3 Analisa Kebutuhan Software
Analisis
perangkat
lunak
yang
dipergunakan
untuk
pembuatan dan penggunaan aplikasi ini adalah:
‐
Sistem operasi Microsoft Windows 7 Ultimate
‐
Sistem operasi Linux
‐
Rational Rose untuk perancangan sistem dengan Unified
Modeling Language (UML)
‐
Squid, software caching proxy yang digunakan untuk
mendapatkan file access.log
‐
Visual C#, bahasa pemrograman untuk pembuatan aplikasi
‐
.NET framework version 4, software yang digunakan untuk
menjalankan aplikasi monitoring access,log squid
24
3.2.4 Analisa Kebutuhan Hardware
Analisis perangkat keras yang digunakan untuk pembuatan
dan penggunakan sistem ini antara lain minimal:
‐
Processor Pentium 4
‐
Hardisk 20 Gb
‐
RAM 256 Mb
‐
Monitor
‐
Standard Keyboard dan Optical Mouse
3.3
Perancangan Sistem dan Perangkat Lunak
Rancangan sistem merupakan rancangan awal sebelum
dilaksanakan penyelesaian terhadap suatu masalah yang ada. Untuk
mencapai tujuan atau hasil yang memadai sesuai kebutuhan dari
permasalahan yang ada, maka diperlukan suatu rancangan sistem
yang dapat menggambarkan secara garis besar seluruh masalah yang
akan di komputerisasi. Dalam perancangan sistem ini digunakan
UML sebagai bahasa pemodelan untuk merancang sistem yang akan
dibangun.
3.3.1
Diagram Alur atau Flowchart
Pada perancangan sistem ini dibuat flowchart sebagai
analisis awal. Model flowchart dapat dilihat pada gambar 3.3.
25
Gam
mbar 3.3 Flow
wchart Proses Analisis
A
File Accces.log
Langkah
h awal yan
ng terlihat dari
d
flowchaart di atas aadalah
mem
mbuka file sebagai
s
strea
am, kemudiaan membacaa baris demi baris.
Unttuk tiap barris, dipecah atau dipisah
h berdasarkkan karakter spasi.
Leb
bih jelasnya akan dijabarrkan pada co
ontoh sebagaai berikut:
26
1301572144.156 6283 192.168.67.71 TCP_MISS/200 11355 GET
http://www.google.co.id/ - DIRECT/74.125.235.51 text/html
Terdapat beberapa elemen, yaitu:
•
Elemen pertama
: 1301572144.156
•
Elemen kedua
: 6283
•
Elemen ketiga
: 192.168.67.71
•
Elemen keempat
: TCP_MISS/200
•
Elemen kelima
: 11355
•
Elemen keenam
: GET
•
Elemen ketujuh
: http://www.google.co.id/
Proses pembacaan berakhir ketika sampai ke akhir file
(EOF), kemudian tutup file.
3.3.2
Use Case Diagram
Dari hasil wawancara serta evaluasi yang didapatkan pada
tahap pertama yaitu analisis dan definisi kebutuhan, dapat diketahui
fungsionalitas yang harus dimiliki oleh sistem yang dibangun. Hal
digambarkan pada use case diagram yang ada pada gambar 3.4.
Dari use case diagram terdapat 1 aktor yaitu user dari sistem
ini. Fungsionalitas yang dimiliki oleh sistem ini ialah melihat hasil
monitoring access.log semua IP yang ada di dalam jaringan dan
melihat hasil monitoring access.log per IP. Pada use case diagram
selain dapat melihat hasil monitoring access.log semua IP yang ada
di dalam jaringan dan melihat hasil monitoring access.log per IP,
terdapat fungsionalitas untuk melihat 10 besar alamat web yang
sering diakses, dan melihat persentase alamat website yang sering
diakses dalam bentuk chart atau grafik
pie. User juga dapat
27
mengubah model warna chart atau grafik pie serta menyimpan hasil
monitoring access.log.
Exit
Help
Analisis Per IP
User
File Open
Proses Analisis
Tabel
Chart atau Grafik Pie
Analisis Semua IP
File Save Images
EarthTones
Chart Setting
Pallete
Chocolate
BrightPastel
Gambar 3.4 Use Case Diagram Sistem Analisis Access.log
3.3.3
Activity Diagram
Untuk mendokumentasikan alur kerja pada sebuah sistem
digunakan Activity Diagram. Dalam sistem yang dibuat terdapat 1
aktor yang berinteraksi dengan sistem, yaitu user. User mempunyai
2 aktifitas yaitu melihat hasil monitoring access.log semua IP yang
ada di dalam jaringan dan melihat hasil monitoring access.log per
IP. Untuk activity diagram dapat dilihat pada gambar 3.5.
28
User
Aplikasi
File Open
Mulai
Memilih File
Validasi File
Access.log
Salah
Pesan Error
Benar
Proses Analisis
Semua IP
Per IP
Pilih Tab
Tabel Report
Chart Report
Pilih Menu
File Save
Image
Chart Setting
Help
Exit
Selesai
Gambar 3.5 Activity Diagram Analisis Access.log
3.3.4
Sequence Diagram
Sequence Diagram menggambarkan interaksi antar objek di
dalam dan di sekitar sistem (termasuk user, display, dan sebagainya)
29
berupa message yang digambarkan terhadap waktu. Sequence
Diagram terdiri atas dimensi vertikal (waktu) dan dimensi horizontal
(objek-objek yang terkait).
Sequence Diagram biasa digunakan untuk menggambarkan
skenario atau rangkaian langkah-langkah yang dilakukan sebagai
response dari sebuah event untuk menghasilkan output tertentu.
Diawali dari apa yang men-trigger aktivitas tersebut, proses, dan
perubahan apa saja yang terjadi secara internal dan output apa yang
dihasilkan.
Disini akan ditampilkan sequence diagram yang merupakan
inti dari sistem yang dibuat.
Aplikasi
: User
Membuka Aplikasi
Memasukkan File Access.log
Menekan Tombol Proses
Validasi Jenis File
Membuka File Access.log
Memproses File Access.log
Menampilkan Hasil Monitoring File Access.log
Menyimpan Gambar Grafik Pie
Gambar 3.6 Sequence Diagram Analisis Access.log
30
Pertama user akan membuka aplikasi, kemudian pengguna
diminta untuk memasukkan file access.log yang akan dianalisa,
pengguna menekan tombol process dan aplikasi akan bekerja.
Setelah aplikasi memastikan bahwa file yang dimasukkan adalah
benar maka aplikasi akan membuka atau membaca file access.log
selanjutnya file access.log yang telah dibaca oleh aplikasi akan
diproses oleh aplikasi. Aplikasi akan membaca setiap baris dalam
file access.log yang ada, kemudian akan dipisahkan berdasarkan
spasi sehingga menghasilkan log record yang berisi timestamp,
elapsed, hostIP, code, bytesTransfered, method, serta url nya. Log
record yang ada akan dilakukan pengelompokan berdasarkan alamat
web serta dilakukan perhitungan jumlah akses ke alamat web
tersebut sehingga dihasilkan 10 besar
alamat web yang sering
diakses serta persentasenya. Setelah proses analisa selesai aplikasi
akan menampilkan hasil analisa serta gambar grafik hasil analisa file
access.log.
3.3.5
Class Diagram
Class diagram merupakan diagram yang digunakan untuk
menampilkan beberapa kelas yang ada dalam suatu sistem serta
menggambarkan relasi-relasi antar kelas tersebut. Perancangan class
diagram pada sistem ini dapat dilihat pada Gambar 3.7.
31
Host
Properties
History
HostName()
IPAddress()
LogRecord
Properties
BytesTransfered()
Code()
Elapsed()
Method()
Timestamp()
URL()
Gambar 3.7 Class Diagram Analisis Access.log
3.4
Desain Antarmuka
Perancangan antarmuka (interface) merupakan rancang
bangun dari interaksi pengguna dengan komputer. Perancangan ini
dapat berupa input data maupun output data untuk menampilkan
informasi kepada pengguna.
Kebutuhan antarmuka yang dibuat bersifat user friendly
(mudah digunakan) dengan tujuan agar program yang telah
dibangun dapat digunakan dengan mudah oleh pengguna. Berikut ini
salah satu contoh rancangan antarmuka dari aplikasi yang akan
dibuat.
Gambar 3.8 Merupakan tampilan rancangan antarmuka
halaman utama.
32
Gambar
G
3.8 Deesain User Inteerface Aplikasi Analisis Acceess.log Bagian Tabel
Gambar 3.9
3 Merupak
kan tampilan
n rancangann antarmuka Chart
atau
u grafik pie pada halamaan utama.
Ga
ambar 3.9 Dessain User Interrface Aplikasi Analisis Accesss.log Bagian G
Grafik
Pie
33
Pada aplikasi dibagi menjadi 2 bagian utama, bagian pertama
berupa tree untuk mengarahkan jenis hasil analisa access.log yang
ingin dilihat oleh user, yaitu hasil analisis untuk semua alamat IP
yang ada pada jaringan atau hanya untuk IP tertentu. Bagian kedua
digunakan untuk melihat hasil analisa terdiri dari 2 tab yaitu tab
table dan tab chart. Tab table digunakan untuk melihat hasil analisa
yang terdiri dari URL, total elapsed times, total bytes transferred,
serta hits. Tab chart untuk melihat hasil analisa dalam bentuk grafik
pie.
34
Bab 4
Hasil dan Pembahasan
4.1
Implementasi Sistem
Setelah melakukan tahap perancangan, langkah selanjutnya
adalah mengimplementasikannya. Dari hasil tahap implementasi
dihasilkan sebuah aplikasi yang mampu menganalisis file access.log.
Hasil dari analisis tersebut menghasilkan persentase web yang
diakses serta 10 besar alamat web yang sering diakses baik untuk
masing-masing IP maupun semua IP dalam satu jaringan. Hasil
analisis tersebut dipaparkan dalam bentuk angka dalam tabel dan
grafik pie sehingga memudahkan user dalam membaca hasil
monitoring.
Alur kerja dari aplikasi yang dibuat adalah user memasukkan
file access.log, kemudian proses analisis berjalan. Setelah proses
berjalan, aplikasi akan menampilkan hasil dalam bentuk tabel dan
grafik pie.
Halaman utama dari aplikasi yang dibuat, user akan memilih
file access log yang akan dimonitor. Halaman utama ini memiliki 3
menu yaitu File, Chart, dan Help. Lebih jelasnya dapat dilihat pada
Gambar 4.1.
35
36
Gambar 4.1
4 Halaman Utama
U
Aplikasi
Penjelassan menu-m
menu pada haalaman utam
ma sebagai beerikut:
1. Menu File
F
Menu file
f pada hallaman utam
ma aplikasi m
memiliki bebberapa
sub
bmenu yaitu open, save chart
c
as ima
age dan exit yang terlihaat pada
Gam
mbar 4.2.
Ga
ambar 4.2 Men
nu File
Submen
nu open digu
unakan untuk
k memilih fille access.logg yang
akaan dimonitorr, seperti yan
ng terlihat di gambar 4.3 .
37
Gambar 4.3 Subm
menu Open darri Menu File A
Aplikasi
Setelah file dipilih maka tomb
bol Process akan aktif, ketika
useer menekan
n tombol process
p
ap
plikasi akann bekerja untuk
mem
monitor filee access.log yang hasiln
nya nanti akkan ditampilkkan di
halaman utamaa.
Gambar 4.4
4 Proses Mon
nitoring File Acccess.log
38
Pada Gambar 4.4 memperlihatkan proses file access.log yang
dimonitor, file yang dimonitor tergantung dengan besar kecilnya
ukuran file dan memperngaruhi waktu yang dibutuhkan. Sistem
monitoring access.log ini menggunakan bahasa pemrograman C#,
pembahasan ini berisi penjelasan kode program proses input file
access.log yang ditangani oleh file LogReader.cs. Setelah membaca
isi file, file ini akan menganalisa file access.log yang dimasukkan
baik analisa secara menyeluruh ataupun per IP. Berikut ini adalah
kode program untuk membaca file access.log:
Kode Program 4.1 File LogReader.cs untuk Membaca File Access.log
1.
public SortedList ReadLog(
2.
3.
string accessLogFile)
{
4.
EventHandler
5.
temp = this.ReadProgressEvent;
6.
long totalBytes = GetTotalBytes(accessLogFile);
7.
8.
BufferedStream bs
9.
= new BufferedStream(
10.
new FileStream(accessLogFile,
11. FileMode.Open));
12.
StreamReader sReader = new StreamReader(bs);
13.
14.
SortedList resultLog
15.
= new SortedList();
16.
17.
string current = null;
18.
long currentBytes = 0;
19.
while (
20.
21.
22.
23.
24.
(current = sReader.ReadLine()) != null)
{
currentBytes += current.Length;
LogRecord a = ReadLine(current);
if (!resultLog.ContainsKey(a.HostIP))
39
25.
{
26.
27.
resultLog.Add(a.HostIP, new
SummaryLog() { });
28.
}
29.
resultLog[a.HostIP]
.AddDetail(
30.
31.
a.URL,
32.
a.BytesTransfered,
33.
a.Elapsed);
34.
if (temp != null)
35.
36.
37.
temp(this, new
ReadLogEventArgs(currentBytes, totalBytes));
}
38.
39.
if (temp != null)
40.
41.
temp(this, new ReadLogEventArgs(totalBytes,
totalBytes));
42.
43.
return resultLog;
44.
45.
}
Kode program di atas digunakan untuk membaca file
access.log. Pada baris (9) sampai dengan baris (12) untuk membaca
file ukuran besar secara efisien, digunakan StreamReader dengan
parameter BufferedReader. Hasil dari pembacaaan akan disimpan
pada
objek
resultLog
yang
bertipe
SortedList. SortedList merupakan class
koleksi yang tiap item yang dimilikinya diberikan kunci (key) yang
unik. Pada kebutuhan sistem ini, kunci yang digunakan bertipe
string, dan item yang disimpan bertipe SummaryLog. Pada baris (20)
sampai dengan baris (39) dilakukan perulangan untuk tiap baris data
(sReader.ReadLine(). Kemajuan proses dicatat pada variabel
currentBytes pada baris (23), untuk ditampilkan dalam bentuk
40
progressbar. Pada baris (24), tiap satu baris data dibaca detail yang
dimilikinya. Penjelasan lebih lanjut tentang hal ini dapat dilihat pada
Kode Program 4.2.
Kode Program 4.2 File LogReader.cs untuk Membaca Data Per Baris
1.
private LogRecord ReadLine(string line)
2.
{
3.
string[] parts
4.
= line.Split(
5.
" ".ToCharArray(),
6.
7.
StringSplitOptions.RemoveEmptyEntries);
8.
LogRecord a = new LogRecord();
9.
a.Timestamp = ConvertFromUnixTimestamp(parts[0]);
10.
a.Elapsed = long.Parse(parts[1]);
11.
a.HostIP = parts[2];
12.
a.Code = parts[3];
13.
a.BytesTransfered = long.Parse(parts[4]);
14.
a.Method = parts[5];
15.
a.URL = ReadUrl(parts[6]);
16.
17.
if (a.Timestamp < MinTimestamp)
18.
MinTimestamp = a.Timestamp;
19.
if (a.Timestamp > MaxTimeStamp)
20.
MaxTimeStamp = a.Timestamp;
21.
22.
23.
return a;
}
Kode program di atas digunakan untuk membaca baris rekor
yang tersimpan pada file access.log. Baris dipecah dengan tanda
pemisah adalah spasi seperti kode pada baris (3) sampai dengan
baris (7) sehingga menghasilkan array dengan tipe data string.
Selanjutnya terdapat variabel bertipe LogRecord dengan nama “a”
yang berguna untuk menyimpan data hasil pemecahan seperti pada
41
barris (8) sampaai dengan baris (15). Untuk
U
mencaatat rentang waktu
pem
mbacaan, yaaitu waktu awal (MinT
Timestamp) dan waktu akhir
(Ma
axTimestamp
p) dapat dilihat pada baaris (17) sam
mpai dengann baris
(20
0).
Setelah proses mo
onitoring selesai, makka hasilnya akan
diperlihatkan tabel
t
hasil monitoring dan grafik pie. Tabell hasil
anaalisis semua IP dapat diliihat pada Gaambar 4.5.
Gambar 4.5
5 Hasil Analisiis Access.log dalam
d
Bentuk T
Tabel Semua IP
P
Pada Gambar
G
4.5 menunjukk
kan hasil aanalisis sem
mua IP
dalam satu jariingan lokal kantor CV Sukses
S
Jayaa Utama. Teerdapat
14 host dengan
n 3 diantaraanya adalah
h wireless aaccess point.. Pada
kolom sebelah
h kanan teerlihat alam
mat website atau URL
L dan
keterangan Tottal Elapsed Time, Total Bytes Transsferred, Hitss yang
dik
kunjungi oleh
h semua IP di kantor teersebut denggan periode waktu
tanggal 16 Aprril 2012 jam 14.00 wib sampai
s
tangggal 24 April 2012
jam
m 18.17 wib.
42
Hasil an
nalisis dari semua
s
IP jug
ga dapat dillihat dalam bbentuk
graafik pie atau chart, deng
gan menampilkan 10 bessar alamat w
website
yan
ng dikunjungi. Gambar 4.6 mempeerlihatkan ggambar graffik pie
hassil monitorin
ng semua IP.
Gambar 4.6 Hasil
H
Analisis Access.log
A
dalaam Bentuk Graafik Pie Semuaa IP
Pada Gaambar 4.6 menunjukan
m
hasil
h
analisiis semua IP dalam
ben
ntuk grafik pie
p atau cha
art, tiap waarna mewakiili alamat w
website
yan
ng dikunjun
ngi. Terdap
pat 11 warna
w
yang berbeda untuk
men
nggambarkaan masing-m
masing alam
mat website, satu diantaaranya
adaalah alamat website
w
yang
g tidak term
masuk dalam 10 besar (others).
Sep
puluh besar alamat
a
webssite yang serring dikunjunngi oleh sem
mua IP
di kantor
k
terseb
but antara laiin:
-
http://prrofile.ak.fbcd
dn.net
-
http://sttatic.kaskus.u
us
-
http://w
www.facebook.com
43
-
http://l.yimg.com
-
http://ad.yieldmanager.com
-
http://www.google-analytics.com
-
http://www.kaskus.us
-
http://prod1.rest-notify.msg.yahoo.com
-
http://ad.kaskus.us
-
http://openx.detik.com
-
Others (alamat website yang tidak termasuk dalam 10 besar
alamat website yang dikunjungi)
Berikut ini adalah kode program untuk menampilkan output
berupa grafik pie.
Kode Program 4.3 File Form1.cs untuk Menampilkan Hasil Output Berupa
Grafik Pie
2.
1. private void GenerateChart(SummaryLog summary, string
title)
3.
{
4.
Series series = this.chart1.Series[0];
5.
series.Points.Clear();
6.
this.chart1.Titles.Clear();
7.
Font f = new Font(
8.
FontFamily.GenericMonospace, 20,
FontStyle.Bold, GraphicsUnit.Pixel);
9.
10.
this.chart1.Titles.Add(
new Title(title, Docking.Top, f,
11.
12.
13.
14.
15.
16.
17.
Color.Olive));
List topTenItems
= (from SummaryLog.SummaryItem s in
summary.Detail.Values
orderby s.Hits descending
select s).Take(10).ToList();
List elseItems
18.
= (from SummaryLog.SummaryItem s in
19. summary.Detail.Values
20.
orderby s.Hits descending
21.
select s).Skip(10).ToList();
22.
44
23.
24.
long totalHits = (from s in summary.Detail.Values
25.
select s.Hits).Sum();
26.
27.
long totalElseHits = (from s in elseItems
28.
select s.Hits).Sum();
29.
30. foreach (SummaryLog.SummaryItem it in topTenItems)
31.
{
32.
DataPoint dp = new DataPoint();
33.
dp.LegendText = it.Hits + " " + it.Url;
34.
dp.LegendToolTip
35.
= (((double)it.Hits /
36. (double)totalHits) * 100.0)
37.
.ToString("#,##0.00") + "%";
38.
dp.YValues = new double[] { it.Hits };
39.
dp.Label = it.Hits.ToString();
40.
dp.ToolTip = it.Url + " (" +
41. dp.LegendToolTip + ")";
series.Points.Add(dp);
42.
43.
}
44.
45.
46.
DataPoint dpElse = new DataPoint();
47.
dpElse.LegendText = totalElseHits.ToString() + "
others";
48.
dpElse.LegendToolTip
49.
50.
= (((double)totalElseHits /
(double)totalHits)
51.
* 100.0).ToString("#,##0.00") + "%";
52.
dpElse.YValues = new double[] { totalElseHits };
53.
dpElse.Label = totalElseHits.ToString();
54.
55.
dpElse.ToolTip = "others (" + dpElse.LegendToolTip
+ " )";
56.
series.Points.Add(dpElse);
}
Kode program di atas digunakan untuk menampilkan chart
berbentuk lingkaran. Baris (4), dipilih chart yang akan dibuat dari
kontrol chart1, kemudian pada baris (5) dipastikan tidak ada data
45
yan
ng ditampilk
kan. Baris (7
7) sampai deengan baris (9) dibuat ssebuah
objek font un
ntuk digunakan sebag
gai model font yang akan
ditaampilkan oleeh chart. Paada Baris (10) sampai ddengan bariss (11),
cha
art diberi judul sesuai dengan
d
nilaii pada baris (1) dan bar
aris (2)
yaittu parameteer string tittle. Baris (1
13) sampai ddengan bariis (17)
dilaakukan querry pada koleeksi summa
ary, yaitu m
mengambil 100 data
den
ngan hits tertinggi.
t
Baris
B
(18) sampai deengan bariss (22)
merrupakan jum
mlah data yaang tidak teermasuk 10 besar. Bariis (24)
sam
mpai dengan
n baris (28) dihitung nillai totalHits . Untuk tiapp hasil
Sum
mmaryItem yang ditunjjukkan bariis (30) padda data 10 besar,
ditaambahkan seebagai data DataPoint (baris
(
32). T
Tiap DataPooint ini
merrupakan tiap
p potongan pada
p
chart pie.
p
Baris (446) sampai ddengan
barris (57) melaakukan hal sama namu
un untuk datta sisa yangg tidak
term
masuk 10 beesar.
Gambarr 4.7 mempeerlihatkan tab
bel hasil anaalisis per IP.
Gambar 4.7
4 Hasil Analisis Access.log
g dalam Bentukk Tabel per IP
46
Hasil analisis
a
perr IP yang terlihat paada Gambaar 4.7
mem
mperlihatkan
n table alam
mat website yang dikunjjungi oleh IP atau
hosst 192.168.1..1.
Gambarr 4.8 mempeerlihatkan gaambar grafikk pie per IP.
Gambar 4.8
8 Hasil Analisis Access.log daalam Bentuk G
Grafik Pie per IIP
Pada Gambar
G
4.8 memperrlihatkan hhasil analisiis IP
192
2.168.1.1 dallam bentuk chart. Sepulluh besar alaamat websitee yang
seriing dikunjun
ngi oleh IP teersebut antarra lain:
-
http://l.yymig.com
-
http://kllimg.com
-
http://au
u.download.windowsupd
date.com
-
http://ad
d.yieldmanag
ger.com
-
http://prrod1.rest-no
otify.msg.yah
hoo.com
-
http://sa
afebrowsing--cache.goog
gle.com
-
http://id
d.yahoo.com
-
http://l1
1.ymig.com
47
-
http://do
ownload.rom
mhustler.net
-
http://prrod2.rest-no
otify.msg.yah
hoo.com
-
Others (alamat web
bsite yang tidak termasuuk dalam 100 besar
w
yang
g dikunjungii)
alamat website
Pada submenu Savee Chart As Im
mage, hasil ddari gambar grafik
pie atau chart dapat
d
disimp
pan dalam tip
pe file sebag ai berikut:
-
JPEG
-
PNG
-
BMP
-
GIF
Unttuk lebih jelasnya terlihaat pada Gam
mbar 4.9.
Gambar 4.9 Submenu Savee Chart As Imaage
48
2. Menu Chart
C
Pada menu
m
chart halaman
h
utam
ma digunakaan untuk m
memilih
atau
u menggantti warna daari grafik piie atau charrt. Ada 3 ppilihan
warrna pada meenu ini yaitu warna Earth
hTones, warrna Chocolatte, dan
warrna BrightP
Pastel. Warn
na-warna un
ntuk grafik pie terlihatt pada
Gam
mbar 4.10, Gambar
G
4.11
1, dan Gambar 4.12.
Gambar 4.10 Menu Chart Warna
W
EarthToones
1 Menu Chart Warna
W
Chocola
late
Gambar 4.11
49
Gambar
G
4.12 Menu
M
Chart Warna
W
BrightPaastel
3. Menu Help
H
Menu help
h
digunak
kan untuk meelihat cara ppenggunaan sistem
monitoring filee access.log
g squid ini. Untuk leb ih jelasnya dapat
diliihat pada Gaambar 4.13.
Gam
mbar 4.13 Men
nu Help
50
4.2
Pengujian Sistem
Pengujian sistem dilakukan fokus pada jalannya aplikasi
dalam menganalisis access.log squid dan melakukan uji validasi
sistem. Pengujian sistem dilakukan pada komputer dengan
spesifikasi sebagai berikut :
-
Processor
: Intel® Pentium Dual-Core CPU @ 2.20GHz
-
RAM
: 2.00 GB
-
System type
:Windows 7 Ultimate 32-bit Operating System
4.2.1
Uji Berdasarkan Ukuran File Access.log
Pengujian berdasarkan ukuran
file
access.log adalah
pengujian yang dilakukan untuk mengetahui lamanya waktu proses
analisis file access.log berdasarkan ukuran file tersebut. Lebih
jelasnya terlihat pada Tabel 4.1.
Tabel 4.1 Uji Ukuran File Access.log
No.
4.2.2
Ukuran File Access.log
Waktu
1.
783 KB
3,86 detik
2.
12.142 KB
16,80 detik
3.
27.033 KB
26,05 detik
4.
46.200 KB
47,47 detik
Uji Validitas
Di dalam pengujian validasi proses analisis, pengujian
dilakukan bersama user dengan menginputkan file access.log pada
sistem yang telah ditentukan sebelumnya. Pengujian dilakukan
51
dengan melakukan input file access.log dan melakukan proses
analisis. Dengan menguji setiap menu dan submenu untuk
mengetahui keluaran atau hasil dari sistem yang dijalankan. Hasil
pengujian sistem yang telah dilakukan terlihat pada Tabel 4.2.
Tabel 4.2 Uji Validasi
Validasi
No.
Jenis Uji
Hasil
Valid
1.
Input file access.log
2.
Input file bukan
access.log
3.
Save Image tipe
JPEG
4.
Save Image tipe PNG
5.
Save Image tipe
BMP
6.
Save Image tipe GIF
7.
Warna grafik
pie/chart EarthTones
8.
Warna grafik
pie/chart Chocolate
9.
Warna grafik
Berhasil
Valid
9
-
Berhasil
9
-
Berhasil
9
-
Berhasil
9
-
Berhasil
9
-
Berhasil
9
-
Berhasil
9
-
Berhasil
9
-
Berhasil
9
-
Tidak
pie/chart
Tidak
52
BrightPastel
10.
Exit
11.
Tabel hasil
monitoring per IP
12.
Tabel hasil
monitoring semua IP
13.
Chart/grafik pie hasil
monitoring per IP
14.
Chart/grafik pie hasil
monitoring semua IP
15.
SearchForm URL
16.
Warna merah pada
URL yang dilarang
Berhasil
9
-
Berhasil
9
-
Berhasil
9
-
Berhasil
9
-
Berhasil
9
-
Berhasil
9
-
Berhasil
9
-
Hasil dari pengujian validitas yang terlihat pada Tabel 4.2,
dapat dijelaskan bahwa proses pada sistem analisis access.log
terlihat bahwa terjadi valid dan pada input file yang bukan
access.log adalah invalid. Data-data tersebut dilakukan pengujian
yang telah ditunjukkan pada Tabel 4.2 dimana data input dan data
output sistem telah berjalan sesuai dengan yang diharapkan.
Bab 5
Kesimpulan dan Saran
5.1 Kesimpulan
Berdasarkan
pembahasan
pada
bab-bab
mengenai
“Perancangan dan Implementasi Sistem Analisis Internet Access.Log
Squid Berbasis Desktop” ini, maka dapat diambil kesimpulan
sebagai berikut:
1. Aplikasi analisis ini dapat dirancang dengan menggunakan
flowchart dan UML .
2. Hasil dari rancangan ini dapat diimplementasikan dengan
menggunakan bahasa pemrograman Visual C# yaitu dengan
membaca tiap baris file access.log yang dipisah berdasarkan
karakter spasi, kemudian membaca elemen-elemen yang
dihasilkan dari pemisahan baris sampai akhir file, sehingga
dihasilkan analisis file access.log pada suatu jaringan LAN
berupa situs-situs yang telah diakses oleh tiap IP Address dan
alamat IP mana sajakah yang telah mengakses suatu situs
tertentu dalam bentuk tabel dan grafik pie.
3. Aplikasi ini mampu mencari alamat IP yang telah mengakses
situs atau alamat URL yang telah dilarang oleh pihak
manajemen.
4. Aplikasi ini dapat dipergunakan sebagai alat bantu staff IT
dalam melakukan pengawasan akses terhadap situs-situs
tertentu yang dilarang oleh pihak manajemen.
53
54
5.2 Saran
Aplikasi analisis file ac