全部产品
Search
文档中心

Simple Log Service:Fungsi Penguraian

更新时间:Jun 26, 2025

Topik ini menjelaskan sintaksis dan parameter fungsi penguraian User-Agent serta memberikan contoh cara menggunakannya.

Fungsi

FungsiDeskripsi
ua_parse_deviceMengurai User-Agent dan mengembalikan informasi perangkat.
ua_parse_osMengurai User-Agent dan mengembalikan informasi sistem operasi.
ua_parse_agentMengurai User-Agent dan mengembalikan informasi browser.
ua_parse_allMengurai User-Agent dan mengembalikan semua informasi.
url_parseMengurai URL dan mengembalikan komponen-komponen URL.
url_parse_qsMengurai string query dari URL dan mengembalikan komponen-komponen string query.
Catatan Fungsi penguraian User-Agent menghapus bidang dengan nilai terurai None. Sebagai contoh, jika informasi perangkat yang diurai adalah {'brand': None, 'family': 'Other', 'model': None}, maka bidang brand dan model akan dihapus, sehingga hasil akhirnya menjadi {'family': 'Other'}.

ua_parse_device

Fungsi ua_parse_device mengurai User-Agent dan mengembalikan informasi perangkat.
  • ua_parse_device(value)
  • ParameterTipeDiperlukanDeskripsi
    valueStringYaString User-Agent yang ingin Anda uraikan.
  • Data berformat JSON dikembalikan.

    • Log mentah
      http_user_agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/192.168.0.0 Safari/537.36
    • Aturan transformasi
      e_set("new_column",ua_parse_device(v("http_user_agent")))
    • Hasil
      http_user_agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/192.168.0.0 Safari/537.36
      new_column:{'family': 'Other'}

ua_parse_os

Fungsi ua_parse_os mengurai User-Agent dan mengembalikan informasi sistem operasi.
  • ua_parse_os(value)
  • ParameterTipeDiperlukanDeskripsi
    valueStringYaString User-Agent yang ingin Anda uraikan.
  • Data berformat JSON dikembalikan.

    • Log mentah
      http_user_agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/192.168.0.0 Safari/537.36
    • Aturan transformasi
      e_set("new_column",ua_parse_os(v("http_user_agent")))
    • Hasil
      http_user_agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/192.168.0.0 Safari/537.36
      new_column:{'family': 'Mac OS X',
                          'major': '10',
                          'minor': '9',
                          'patch': '4'}

ua_parse_agent

Fungsi ua_parse_agent mengurai User-Agent dan mengembalikan informasi browser.
  • ua_parse_agent(value)
  • ParameterTipeDiperlukanDeskripsi
    valueStringYaString User-Agent yang ingin Anda uraikan.
  • Data berformat JSON dikembalikan.

    • Log mentah
      http_user_agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/192.168.0.0 Safari/537.36
    • Aturan transformasi
      e_set("new_column",ua_parse_agent(v("http_user_agent")))
    • Hasil
      http_user_agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/192.168.0.0 Safari/537.36
      new_column:{'family': 'Chrome', 'major': '192', 'minor': '168', 'patch': '0'}

ua_parse_all

Fungsi ua_parse_all mengurai User-Agent dan mengembalikan semua informasi.
  • ua_parse_all(value)
  • ParameterTipeDiperlukanDeskripsi
    valueStringYaString User-Agent yang ingin Anda uraikan.
  • Data berformat JSON dikembalikan.

    • Log mentah
      http_user_agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/192.168.0.0 Safari/537.36
    • Aturan transformasi
      e_set("new_column",ua_parse_all(v("http_user_agent")))
    • Hasil
      http_user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/192.168.0.0 Safari/537.36
      new_column: {
        "user_agent": {
          "family": "Chrome",
          "major": "192",
          "minor": "168",
          "patch": "0"
        },
        "os": {
          "family": "Mac OS X",
          "major": "10",
          "minor": "9",
          "patch": "4"
        },
        "device": {
          "family": "Mac",
          "brand": "Apple",
          "model": "Mac"
        }
      }

url_parse

Fungsi url_parse mengurai URL dan mengembalikan komponen-komponen URL.
  • url_parse(url, scheme="", allow_fragments=True)
  • ParameterTipeDiperlukanDeskripsi
    valueStringYaURL yang ingin Anda uraikan.
    schemeStringTidakProtokol jaringan. Parameter ini kosong secara default.

    Jika URL yang ingin Anda uraikan tidak mengandung protokol jaringan, nilai dari parameter ini akan dikembalikan untuk parameter scheme dalam hasil.

    allow_fragmentsBooleanTidakMenentukan apakah akan mengurai bagian fragmen dalam URL. Nilai valid:
    • True: mengurai bagian fragmen dalam URL. Nilai spesifik dikembalikan untuk parameter fragment. Ini adalah nilai default.
    • False: tidak mengurai bagian fragmen dalam URL. String kosong dikembalikan untuk parameter fragment.
  • Data berformat JSON dikembalikan. Tabel berikut menjelaskan parameter dalam hasil.
    ParameterDeskripsi
    schemeProtokol jaringan.
    netlocLokasi jaringan.
    pathPengenal jalur hierarkis.
    queryKomponen query.
    fragmentPengenal fragmen.
    • Contoh 1: Gunakan pengaturan parameter default. Komponen-komponen URL dikembalikan.
      • Log mentah
        content:https://username:username@example.com:8083/hello/asdah/;type=docx?filename=python3.docx#urllib
      • Aturan transformasi
        e_set("url",url_parse(v("content")))
      • Hasil
        content:https://username:username@example.com:8083/hello/asdah/;type=docx?filename=python3.docx#urllib
        url:{
                "scheme": "https",
                "netloc": "username:username@example.com:8083",
                "path": "/hello/asdah/;type=docx",
                "query": "filename=python3.docx",
                "fragment": "urllib",
            }
    • Contoh 2: Setel allow_fragments ke False. String kosong dikembalikan untuk parameter fragment.
      • Log mentah
        content:https://username:username@example.com:8083/hello/asdah/;type=docx?filename=python3.docx#urllib
      • Aturan transformasi
        e_set("url",url_parse(v("content"),allow_fragments=False))
      • Hasil
        content:https://username:username@example.com:8083/hello/asdah/;type=docx?filename=python3.docx#urllib
        url:{
                        "scheme": "https",
                "netloc": "username:username@example.com:8083",
                "path": "/hello/asdah/;type=docx",
                "query": "filename=python3.docx",
                "fragment": "",
            }
    • Contoh 3: Setel scheme ke https dan setel allow_fragments ke False. Nilai https dikembalikan untuk parameter scheme, dan string kosong dikembalikan untuk parameter fragment.
      • Log mentah
        content://username:username@example.com:8083/hello/asdah/;type=docx?filename=python3.docx#urllib
      • Aturan transformasi
        e_set("url",url_parse(v("content"),scheme="https", allow_fragments=False))
      • Hasil
        content://username:username@example.com:8083/hello/asdah/;type=docx?filename=python3.docx#urllib
        url:{
               "scheme": "https",
                "netloc": "username:username@example.com:8083",
                "path": "/hello/asdah/;type=docx",
                "query": "filename=python3.docx",
                "fragment": "",
            }

url_parse_qs

Fungsi url_parse_qs mengurai string query dari URL dan mengembalikan komponen-komponen string query.
  • url_parse_qs(
        url_qs,
        keep_blank_values=False,
        strict_parsing=False,
        encoding="utf-8",
        errors="replace",
        ignore_multi_fields=True,
    )
  • ParameterTipeDiperlukanDeskripsi
    url_qsStringYaString query URL yang ingin Anda uraikan.
    keep_blank_valuesBooleanTidakMenentukan apakah akan mengembalikan parameter yang kosong. Nilai valid:
    • False: tidak mengembalikan parameter yang kosong. Ini adalah nilai default.
    • True: mengembalikan parameter yang kosong dan mengembalikan string kosong sebagai nilai untuk parameter tersebut.
    strict_parsingBooleanTidakMenentukan apakah akan menangani kesalahan penguraian. Nilai valid:
    • True: memicu pengecualian ValueError untuk kesalahan penguraian.
    • False: mengabaikan kesalahan penguraian. Ini adalah nilai default.
    encodingStringTidakMetode pengkodean. Nilai default: utf-8. Karakter escape yang mengandung tanda persen (%) diurai menjadi karakter Unicode. ASCII didukung.
    errorsStringTidakMetode untuk memproses karakter yang tidak dapat dikenali berdasarkan metode encoding. Nilai yang valid:
    • ignore: mengabaikan karakter tersebut.
    • strict: melaporkan kesalahan dan membuang log yang berisi karakter tersebut.
    • replace: mengganti karakter dengan tanda tanya (?). Ini adalah nilai default.
    • xmlcharrefreplace: mengganti karakter dengan karakter XML.
    ignore_multi_fieldsNumNoJumlah nilai yang dikembalikan untuk satu parameter. Nilai valid:
    • True: hanya mengembalikan nilai pertama untuk setiap parameter. Nilai kembali adalah string. Ini adalah nilai default.
    • False: mengembalikan semua nilai untuk setiap parameter. Nilai kembali adalah daftar.
  • Data berformat JSON dikembalikan. Tabel berikut menjelaskan parameter dalam hasil.
    ParameterDeskripsi
    logTypeTipe log.
    uidPengenal unik log.
    timeWaktu log.
    msgInformasi dalam log.
    • Contoh 1: Setel keep_blank_values ke True. Parameter yang kosong dikembalikan.
      • Log mentah
        content:logType=net_wheel_log&uid=62452****&vid=6.1.0_gf_pc&asb=1206427&git=&time=22-11-3+%e4%b8%8a11%e6%97%b649%e5%88%8633%e7%a7%92&operatingSystem=Windows+10++(10.0.0)+64bit&deviceModel=System+Product+Name+(System+manufacturer)&graphicsDeviceName=NVIDIA+GeForce+GTX+1650&graphicsDeviceType=Direct3D11&graphicsDeviceVendor=NVIDIA&graphicsDeviceVersion=Direct3D+11.0+%5blevel+11.1%5d&graphicsMemorySize=3962&systemMemorySize=8127&processorCount=6&processorFrequency=3000&processorType=Intel(R)+Core(TM)+i5-9500F+CPU+%40+3.00GHz&deviceID=96da5902a042a5f84118995f88373f73650e76be166589726****&guessUID=62452****&networkReachability=wifi&msg=GetAuthkeyRsp
      • Aturan transformasi
        e_set("url",url_parse_qs(v("content"), keep_blank_values=True))
      • Hasil
        content:logType=net_wheel_log&uid=62452****&vid=6.1.0_gf_pc&asb=1206427&git=&time=22-11-3+%e4%b8%8a11%e6%97%b649%e5%88%8633%e7%a7%92&operatingSystem=Windows+10++(10.0.0)+64bit&deviceModel=System+Product+Name+(System+manufacturer)&graphicsDeviceName=NVIDIA+GeForce+GTX+1650&graphicsDeviceType=Direct3D11&graphicsDeviceVendor=NVIDIA&graphicsDeviceVersion=Direct3D+11.0+%5blevel+11.1%5d&graphicsMemorySize=3962&systemMemorySize=8127&processorCount=6&processorFrequency=3000&processorType=Intel(R)+Core(TM)+i5-9500F+CPU+%40+3.00GHz&deviceID=96da5902a042a5f84118995f88373f73650e76be166589726****&guessUID=62452****&networkReachability=wifi&msg=GetAuthkeyRsp
        url:{
                "logType": "net_wheel_log",
                "uid": "62452****",
                "vid": "6.1.0_gf_pc",
                "asb": "1206427",
                "git": "",
                "time": "22-11-3 11:49:33",
                "operatingSystem": "Windows 10  (10.0.0) 64bit",
                "deviceModel": "System Product Name (System manufacturer)",
                "graphicsDeviceName": "NVIDIA GeForce GTX 1650",
                "graphicsDeviceType": "Direct3D11",
                "graphicsDeviceVendor": "NVIDIA",
                "graphicsDeviceVersion": "Direct3D 11.0 [level 11.1]",
                "graphicsMemorySize": "3962",
                "systemMemorySize": "8127",
                "processorCount": "6",
                "processorFrequency": "3000",
                "processorType": "Intel(R) Core(TM) i5-9500F CPU @ 3.00GHz",
                "deviceID": "96da5902a042a5f84118995f88373f73650e76be166589726****",
                "guessUID": "62452****",
                "networkReachability": "wifi",
                "msg": "GetAuthkeyRsp",
            }
    • Contoh 2: Setel keep_blank_values ke False. Parameter yang tidak kosong dikembalikan.
      • Log mentah
        content:logType=net_wheel_log&uid=62452****&vid=6.1.0_gf_pc&asb=1206427&git=&time=22-11-3+%e4%b8%8a11%e6%97%b649%e5%88%8633%e7%a7%92&operatingSystem=Windows+10++(10.0.0)+64bit&deviceModel=System+Product+Name+(System+manufacturer)&graphicsDeviceName=NVIDIA+GeForce+GTX+1650&graphicsDeviceType=Direct3D11&graphicsDeviceVendor=NVIDIA&graphicsDeviceVersion=Direct3D+11.0+%5blevel+11.1%5d&graphicsMemorySize=3962&systemMemorySize=8127&processorCount=6&processorFrequency=3000&processorType=Intel(R)+Core(TM)+i5-9500F+CPU+%40+3.00GHz&deviceID=96da5902a042a5f84118995f88373f73650e76be166589726****&guessUID=62452****&networkReachability=wifi&msg=GetAuthkeyRsp
      • Aturan transformasi
        e_set("url",url_parse_qs(v("content")))
      • Hasil
        content:logType=net_wheel_log&uid=62452****&vid=6.1.0_gf_pc&asb=1206427&git=&time=22-11-3+%e4%b8%8a11%e6%97%b649%e5%88%8633%e7%a7%92&operatingSystem=Windows+10++(10.0.0)+64bit&deviceModel=System+Product+Name+(System+manufacturer)&graphicsDeviceName=NVIDIA+GeForce+GTX+1650&graphicsDeviceType=Direct3D11&graphicsDeviceVendor=NVIDIA&graphicsDeviceVersion=Direct3D+11.0+%5blevel+11.1%5d&graphicsMemorySize=3962&systemMemorySize=8127&processorCount=6&processorFrequency=3000&processorType=Intel(R)+Core(TM)+i5-9500F+CPU+%40+3.00GHz&deviceID=96da5902a042a5f84118995f88373f73650e76be166589726****&guessUID=62452****&networkReachability=wifi&msg=GetAuthkeyRsp
        url:{
                "logType": "net_wheel_log",
                "uid": "62452****",
                "vid": "6.1.0_gf_pc",
                "asb": "1206427",
                "time": "22-11-3 11:49:33",
                "operatingSystem": "Windows 10  (10.0.0) 64bit",
                "deviceModel": "System Product Name (System manufacturer)",
                "graphicsDeviceName": "NVIDIA GeForce GTX 1650",
                "graphicsDeviceType": "Direct3D11",
                "graphicsDeviceVendor": "NVIDIA",
                "graphicsDeviceVersion": "Direct3D 11.0 [level 11.1]",
                "graphicsMemorySize": "3962",
                "systemMemorySize": "8127",
                "processorCount": "6",
                "processorFrequency": "3000",
                "processorType": "Intel(R) Core(TM) i5-9500F CPU @ 3.00GHz",
                "deviceID": "96da5902a042a5f84118995f88373f73650e76be166589726****",
                "guessUID": "62452****",
                "networkReachability": "wifi",
                "msg": "GetAuthkeyRsp",
            }
    • Contoh 3: Setel ignore_multi_fields ke True. Hanya nilai pertama untuk setiap parameter yang dikembalikan.
      • Log mentah
        content:logType=net_log&uid=62452****&x=1&x=2&x=3&asb=123&asb=456
      • Aturan transformasi
        e_set("url",url_parse_qs(v("content")))
      • Hasil
        content:logType=net_log&uid=62452****&x=1&x=2&x=3&asb=123&asb=456
        url:{
            "logType": "net_log",
            "uid": "62452****",
            "x": "1",
            "asb": "123"
        }
    • Contoh 4: Setel ignore_multi_fields ke False. Semua nilai untuk setiap parameter dikembalikan.
      • Log mentah
        content:logType=net_log&uid=62452****&x=1&x=2&x=3&asb=123&asb=456
      • Aturan transformasi
        e_set("url",url_parse_qs(v("content"),ignore_multi_fields=False))
      • Hasil
        content:logType=net_log&uid=62452****&x=1&x=2&x=3&asb=123&asb=456
        url:{
            "logType": ["net_log"],
              "uid": ["62452****"],
              "x": ["1", "2", "3"],
              "asb": ["123", "456"],
        }