Menu
CoddyTech

Revisão: Monitoramento do Servidor

Parte da seção Aprendizado não supervisionado do Journey de Machine Learning da Coddy. Lição 38 de 51.

challenge icon

Desafio

Médio

Um servidor web registrou cada minuto do turno da noite. Quais minutos foram realmente estranhos?

  1. Escale as quatro columns.
  2. Sinalize os minutos com uma floresta de isolamento (contamination=0.03, random_state=0) e com LOF (n_neighbors=20, contamination=0.03).
  3. Imprima, em ordem cronológica, os minutos sinalizados por ambos, como abaixo.
  4. Faça um gráfico de dispersão de cada minuto, com as solicitações no eixo horizontal e a latência no eixo vertical, identificados como minutes. Circule em vermelho os minutos sinalizados por ambos, identificados como both detectors. Adicione uma legenda e exiba o gráfico.

Para outra noite:

Both detectors flag 5 minutes:
  00:25: 1116 requests/s, 186 ms
  01:10: 2106 requests/s, 95 ms
  02:00: 1151 requests/s, 133 ms
  02:40: 835 requests/s, 142 ms
  03:10: 1774 requests/s, 82 ms

Uma noite de minutos do servidor, com solicitações por segundo no eixo horizontal e latência no vertical: uma nuvem ascendente, três minutos lentos circulados em vermelho acima dela e dois minutos movimentados bem à direita

Em seguida, Coddy descreve seu gráfico.

Experimente você mesmo

import pandas as pd
import matplotlib.pyplot as plt
from sklearn.preprocessing import StandardScaler
from sklearn.ensemble import IsolationForest
from sklearn.neighbors import LocalOutlierFactor

# Uma linha por minuto do turno da noite em um servidor web
log = pd.read_csv("servers.csv")
columns = ["cpu_pct", "memory_gb", "requests_per_s", "latency_ms"]

# Não altere as linhas abaixo
fig, ax = plt.subplots()
ax.set_title("Server Watch")
ax.set_xlabel("Requests per second")
ax.set_ylabel("Latency (ms)")

# Escreva seu código abaixo

Todas as lições de Aprendizado não supervisionado

Pratique por conta própria: Compilador de Python online