mirror of
https://github.com/kubeshark/kubeshark.git
synced 2025-08-12 21:58:33 +00:00
TRA-3234 fetch with _source + no hard limit (#64)
* remove the HARD limit of 5000
This commit is contained in:
parent
7dad5be676
commit
2c8d1f854d
@ -64,7 +64,7 @@ func GetEntries(c *fiber.Ctx) error {
|
|||||||
return c.Status(fiber.StatusOK).JSON(baseEntries)
|
return c.Status(fiber.StatusOK).JSON(baseEntries)
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetHAR(c *fiber.Ctx) error {
|
func GetHARs(c *fiber.Ctx) error {
|
||||||
entriesFilter := &models.HarFetchRequestBody{}
|
entriesFilter := &models.HarFetchRequestBody{}
|
||||||
order := OrderDesc
|
order := OrderDesc
|
||||||
if err := c.QueryParser(entriesFilter); err != nil {
|
if err := c.QueryParser(entriesFilter); err != nil {
|
||||||
@ -87,7 +87,7 @@ func GetHAR(c *fiber.Ctx) error {
|
|||||||
utils.ReverseSlice(entries)
|
utils.ReverseSlice(entries)
|
||||||
}
|
}
|
||||||
|
|
||||||
harsObject := map[string]*har.HAR{}
|
harsObject := map[string]*models.ExtendedHAR{}
|
||||||
|
|
||||||
for _, entryData := range entries {
|
for _, entryData := range entries {
|
||||||
harEntryObject := []byte(entryData.Entry)
|
harEntryObject := []byte(entryData.Entry)
|
||||||
@ -101,12 +101,15 @@ func GetHAR(c *fiber.Ctx) error {
|
|||||||
} else {
|
} else {
|
||||||
var entriesHar []*har.Entry
|
var entriesHar []*har.Entry
|
||||||
entriesHar = append(entriesHar, &harEntry)
|
entriesHar = append(entriesHar, &harEntry)
|
||||||
harsObject[sourceOfEntry] = &har.HAR{
|
harsObject[sourceOfEntry] = &models.ExtendedHAR{
|
||||||
Log: &har.Log{
|
Log: &models.ExtendedLog{
|
||||||
Version: "1.2",
|
Version: "1.2",
|
||||||
Creator: &har.Creator{
|
Creator: &models.ExtendedCreator{
|
||||||
Name: "mizu",
|
Creator: &har.Creator{
|
||||||
Version: "0.0.1",
|
Name: "mizu",
|
||||||
|
Version: "0.0.2",
|
||||||
|
},
|
||||||
|
Source: sourceOfEntry,
|
||||||
},
|
},
|
||||||
Entries: entriesHar,
|
Entries: entriesHar,
|
||||||
},
|
},
|
||||||
|
@ -2,6 +2,7 @@ package models
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
|
"github.com/google/martian/har"
|
||||||
"github.com/up9inc/mizu/shared"
|
"github.com/up9inc/mizu/shared"
|
||||||
"mizuserver/pkg/tap"
|
"mizuserver/pkg/tap"
|
||||||
"time"
|
"time"
|
||||||
@ -47,7 +48,7 @@ type EntriesFilter struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type HarFetchRequestBody struct {
|
type HarFetchRequestBody struct {
|
||||||
Limit int `query:"limit" validate:"max=5000"`
|
Limit int `query:"limit"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type WebSocketEntryMessage struct {
|
type WebSocketEntryMessage struct {
|
||||||
@ -80,3 +81,24 @@ func CreateWebsocketTappedEntryMessage(base *tap.OutputChannelItem) ([]byte, err
|
|||||||
}
|
}
|
||||||
return json.Marshal(message)
|
return json.Marshal(message)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ExtendedHAR is the top level object of a HAR log.
|
||||||
|
type ExtendedHAR struct {
|
||||||
|
Log *ExtendedLog `json:"log"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// ExtendedLog is the HAR HTTP request and response log.
|
||||||
|
type ExtendedLog struct {
|
||||||
|
// Version number of the HAR format.
|
||||||
|
Version string `json:"version"`
|
||||||
|
// Creator holds information about the log creator application.
|
||||||
|
Creator *ExtendedCreator `json:"creator"`
|
||||||
|
// Entries is a list containing requests and responses.
|
||||||
|
Entries []*har.Entry `json:"entries"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type ExtendedCreator struct {
|
||||||
|
*har.Creator
|
||||||
|
Source string `json:"_source"`
|
||||||
|
}
|
@ -12,7 +12,7 @@ func EntriesRoutes(fiberApp *fiber.App) {
|
|||||||
routeGroup.Get("/entries", controllers.GetEntries) // get entries (base/thin entries)
|
routeGroup.Get("/entries", controllers.GetEntries) // get entries (base/thin entries)
|
||||||
routeGroup.Get("/entries/:entryId", controllers.GetEntry) // get single (full) entry
|
routeGroup.Get("/entries/:entryId", controllers.GetEntry) // get single (full) entry
|
||||||
|
|
||||||
routeGroup.Get("/har", controllers.GetHAR)
|
routeGroup.Get("/har", controllers.GetHARs)
|
||||||
routeGroup.Get("/resetDB", controllers.DeleteAllEntries) // get single (full) entry
|
routeGroup.Get("/resetDB", controllers.DeleteAllEntries) // get single (full) entry
|
||||||
routeGroup.Get("/generalStats", controllers.GetGeneralStats) // get general stats about entries in DB
|
routeGroup.Get("/generalStats", controllers.GetGeneralStats) // get general stats about entries in DB
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FOLDER=$(GOOS).$(GOARCH)
|
FOLDER=$(GOOS).$(GOARCH)
|
||||||
COMMIT_HASH=$(shell git rev-parse HEAD)
|
COMMIT_HASH=$(shell git rev-parse HEAD)
|
||||||
GIT_BRANCH=$(shell git branch --show-current)
|
GIT_BRANCH=$(shell git branch --show-current | tr '[:upper:]' '[:lower:]')
|
||||||
|
|
||||||
.PHONY: help
|
.PHONY: help
|
||||||
.DEFAULT_GOAL := help
|
.DEFAULT_GOAL := help
|
||||||
|
Loading…
Reference in New Issue
Block a user