window.median

Didukung di:
window.median(numeric_values, should_ignore_zero_values)

Deskripsi

Menampilkan median nilai input. Jika ada 2 nilai median, hanya 1 yang akan dipilih secara non-deterministik sebagai nilai yang ditampilkan.

Jenis data parameter

INT|FLOAT, BOOL

Jenis hasil yang ditampilkan

FLOAT

Contoh kode

Contoh 1

Contoh ini menampilkan median saat nilai input bukan nol.

rule median_file_size {
    meta:
    events:
      $e.metadata.event_type = "FILE_COPY"
        $userid = $e.principal.user.userid
    match:
      $userid over 1h
    outcome:
      $median_file_size = window.median($e.principal.file.size) // returns 2 if the file sizes in the match window are [1, 2, 3]
  condition:
      $e
}
Contoh 2

Contoh ini menampilkan median saat input menyertakan beberapa nilai nol yang tidak boleh diabaikan.

rule median_file_size {
    meta:
    events:
      $e.metadata.event_type = "FILE_COPY"
        $userid = $e.principal.user.userid
    match:
      $userid over 1h
    outcome:
      $median_file_size = window.median($e.principal.file.size) // returns 1 if the file sizes in the match window are [0,0, 1, 2, 3]
  condition:
      $e
}
Contoh 3

Contoh ini menampilkan median saat input menyertakan beberapa nilai nol yang harus diabaikan.

rule median_file_size {
    meta:
    events:
      $e.metadata.event_type = "FILE_COPY"
        $userid = $e.principal.user.userid
    match:
      $userid over 1h
    outcome:
      $median_file_size = window.median($e.principal.file.size, true) // returns 2 if the file sizes in the match window are [0,0, 1, 2, 3]
  condition:
      $e
}
Contoh 4

Contoh ini menampilkan median saat input mencakup semua nilai nol yang harus diabaikan.

rule median_file_size {
    meta:
    events:
      $e.metadata.event_type = "FILE_COPY"
        $userid = $e.principal.user.userid
    match:
      $userid over 1h
    outcome:
      $median_file_size = window.median($e.principal.file.size) // returns 0 if the file sizes in the match window are [0,0]
  condition:
      $e
}
Contoh 5

Contoh ini menunjukkan bahwa, jika ada beberapa median, hanya satu median yang ditampilkan.

rule median_file_size {
    meta:
    events:
      $e.metadata.event_type = "FILE_COPY"
        $userid = $e.principal.user.userid
    match:
      $userid over 1h
    outcome:
      $median_file_size = window.median($e.principal.file.size) // returns 1 if the file sizes in the match window are [1, 2, 3, 4]
  condition:
      $e
}