Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 0 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,10 +54,6 @@ NAME:
USAGE:
tail [options] <source-id/app>

ENVIRONMENT VARIABLES:
LOG_CACHE_ADDR Overrides the default location of log-cache.
LOG_CACHE_SKIP_AUTH Set to 'true' to disable CF authentication.

OPTIONS:
--start-time Start of query range in UNIX nanoseconds.
--end-time End of query range in UNIX nanoseconds.
Expand All @@ -80,10 +76,6 @@ NAME:
USAGE:
log-meta [options]

ENVIRONMENT VARIABLES:
LOG_CACHE_ADDR Overrides the default location of log-cache.
LOG_CACHE_SKIP_AUTH Set to 'true' to disable CF authentication.

OPTIONS:
--guid Display raw source GUIDs with no source Names. Incompativle with 'source' and 'source-type' for --sort-by. Incompatible with 'application' for --source-type
--noise Fetch and display the rate of envelopes per minute for the last minute. WARNING: This is slow...
Expand All @@ -101,10 +93,6 @@ NAME:
USAGE:
query <promql-query> [options]

ENVIRONMENT VARIABLES:
LOG_CACHE_ADDR Overrides the default location of log-cache.
LOG_CACHE_SKIP_AUTH Set to 'true' to disable CF authentication.

OPTIONS:
--end End time for a range query. Cannont be used with --time. Can be a unix timestamp or RFC3339.
--start Start time for a range query. Cannont be used with --time. Can be a unix timestamp or RFC3339.
Expand Down
23 changes: 7 additions & 16 deletions internal/command/meta.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import (
"encoding/json"
"fmt"
"io"
"os"
"regexp"
"sort"
"strings"
Expand Down Expand Up @@ -221,15 +220,13 @@ func createLogCacheClient(c http.Client, log Logger, cli plugin.CliConnection) *
log.Fatalf("Could not determine Log Cache endpoint: %s", err)
}

if strings.ToLower(os.Getenv("LOG_CACHE_SKIP_AUTH")) != "true" {
c = http.NewTokenClient(c, func() string {
token, err := cli.AccessToken()
if err != nil {
log.Fatalf("Unable to get Access Token: %s", err)
}
return token
})
}
c = http.NewTokenClient(c, func() string {
token, err := cli.AccessToken()
if err != nil {
log.Fatalf("Unable to get Access Token: %s", err)
}
return token
})

return logcache.NewClient(
logCacheEndpoint,
Expand Down Expand Up @@ -506,12 +503,6 @@ func maxDuration(a, b time.Duration) time.Duration {
}

func logCacheEndpoint(cli plugin.CliConnection) (string, error) {
logCacheAddr := os.Getenv("LOG_CACHE_ADDR")

if logCacheAddr != "" {
return logCacheAddr, nil
}

apiEndpoint, err := cli.ApiEndpoint()
if err != nil {
return "", err
Expand Down
57 changes: 0 additions & 57 deletions internal/command/meta_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import (
"errors"
"fmt"
"net/url"
"os"
"strings"

"code.cloudfoundry.org/log-cache-cli/v4/internal/command"
Expand Down Expand Up @@ -1018,62 +1017,6 @@ var _ = Describe("Meta", func() {
Expect(strings.Split(tableWriter.String(), "\n")).To(HaveLen(57))
})

It("uses the LOG_CACHE_ADDR environment variable", func() {
_ = os.Setenv("LOG_CACHE_ADDR", "https://different-log-cache:8080")
defer func() { _ = os.Unsetenv("LOG_CACHE_ADDR") }()

httpClient.responseBody = []string{
metaResponseInfo("source-1"),
}

cliConn.cliCommandResult = [][]string{
{
capiAppsResponse(map[string]string{"source-1": "app-1"}),
},
}
cliConn.cliCommandErr = nil

command.Meta(
cliConn,
nil,
httpClient,
logger,
tableWriter,
)

Expect(httpClient.requestURLs).To(HaveLen(1))
u, err := url.Parse(httpClient.requestURLs[0])
Expect(err).ToNot(HaveOccurred())
Expect(u.Scheme).To(Equal("https"))
Expect(u.Host).To(Equal("different-log-cache:8080"))
})

It("does not send Authorization header with LOG_CACHE_SKIP_AUTH", func() {
_ = os.Setenv("LOG_CACHE_SKIP_AUTH", "true")
defer func() { _ = os.Unsetenv("LOG_CACHE_SKIP_AUTH") }()

httpClient.responseBody = []string{
metaResponseInfo("source-1"),
}

cliConn.cliCommandResult = [][]string{
{
capiAppsResponse(map[string]string{"source-1": "app-1"}),
},
}
cliConn.cliCommandErr = nil

command.Meta(
cliConn,
nil,
httpClient,
logger,
tableWriter,
)

Expect(httpClient.requestHeaders[0]).To(BeEmpty())
})

It("fatally logs when it receives too many arguments", func() {
Expect(func() {
command.Meta(
Expand Down
40 changes: 17 additions & 23 deletions internal/command/query.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import (
"errors"
"fmt"
"io"
"os"
"strconv"
"strings"
"time"
Expand Down Expand Up @@ -44,35 +43,30 @@ func Query(

lw := lineWriter{w: w}

if strings.ToLower(os.Getenv("LOG_CACHE_SKIP_AUTH")) != "true" {
c = http.NewTokenClient(c, func() string {
token, err := cli.AccessToken()
if err != nil {
log.Fatalf("Unable to get Access Token: %s", err)
}
return token
})
}

logCacheAddr := os.Getenv("LOG_CACHE_ADDR")
if logCacheAddr == "" {
hasAPI, err := cli.HasAPIEndpoint()
c = http.NewTokenClient(c, func() string {
token, err := cli.AccessToken()
if err != nil {
log.Fatalf("%s", err)
log.Fatalf("Unable to get Access Token: %s", err)
}
return token
})

if !hasAPI {
log.Fatalf("No API endpoint targeted.")
}
hasAPI, err := cli.HasAPIEndpoint()
if err != nil {
log.Fatalf("%s", err)
}

tokenURL, err := cli.ApiEndpoint()
if err != nil {
log.Fatalf("%s", err)
}
if !hasAPI {
log.Fatalf("No API endpoint targeted.")
}

logCacheAddr = strings.Replace(tokenURL, "api", "log-cache", 1)
tokenURL, err := cli.ApiEndpoint()
if err != nil {
log.Fatalf("%s", err)
}

logCacheAddr := strings.Replace(tokenURL, "api", "log-cache", 1)

client := logcache.NewClient(logCacheAddr, logcache.WithHTTPClient(c))

var res *logcache.PromQLQueryResult
Expand Down
92 changes: 43 additions & 49 deletions internal/command/tail.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import (
"errors"
"fmt"
"io"
"os"
"regexp"
"strings"
"text/template"
Expand Down Expand Up @@ -59,53 +58,50 @@ func Tail(
}
}()

logCacheAddr := os.Getenv("LOG_CACHE_ADDR")
if logCacheAddr == "" {
hasAPI, err := cli.HasAPIEndpoint()
if err != nil {
log.Fatalf("%s", err)
}
hasAPI, err := cli.HasAPIEndpoint()
if err != nil {
log.Fatalf("%s", err)
}

if !hasAPI {
log.Fatalf("No API endpoint targeted.")
}
if !hasAPI {
log.Fatalf("No API endpoint targeted.")
}

tokenURL, err := cli.ApiEndpoint()
if err != nil {
log.Fatalf("%s", err)
}
tokenURL, err := cli.ApiEndpoint()
if err != nil {
log.Fatalf("%s", err)
}

user, err := cli.Username()
if err != nil {
log.Fatalf("%s", err)
}
user, err := cli.Username()
if err != nil {
log.Fatalf("%s", err)
}

org, err := cli.GetCurrentOrg()
if err != nil {
log.Fatalf("%s", err)
}
org, err := cli.GetCurrentOrg()
if err != nil {
log.Fatalf("%s", err)
}

space, err := cli.GetCurrentSpace()
if err != nil {
log.Fatalf("%s", err)
}
space, err := cli.GetCurrentSpace()
if err != nil {
log.Fatalf("%s", err)
}

logCacheAddr = strings.Replace(tokenURL, "api", "log-cache", 1)
logCacheAddr := strings.Replace(tokenURL, "api", "log-cache", 1)

headerPrinter := formatter.sourceHeader
switch o.source.Type {
case _application:
headerPrinter = formatter.appHeader
case _service:
headerPrinter = formatter.serviceHeader
}
headerPrinter := formatter.sourceHeader
switch o.source.Type {
case _application:
headerPrinter = formatter.appHeader
case _service:
headerPrinter = formatter.serviceHeader
}

if !o.noHeaders {
header, ok := headerPrinter(o.source.Name, org.Name, space.Name, user)
if ok {
lw.Write(header)
lw.Write("")
}
if !o.noHeaders {
header, ok := headerPrinter(o.source.Name, org.Name, space.Name, user)
if ok {
lw.Write(header)
lw.Write("")
}
}

Expand All @@ -117,15 +113,13 @@ func Tail(
return formatter.formatEnvelope(e)
}

if strings.ToLower(os.Getenv("LOG_CACHE_SKIP_AUTH")) != "true" {
c = http.NewTokenClient(c, func() string {
token, err := cli.AccessToken()
if err != nil {
log.Fatalf("Unable to get Access Token: %s", err)
}
return token
})
}
c = http.NewTokenClient(c, func() string {
token, err := cli.AccessToken()
if err != nil {
log.Fatalf("Unable to get Access Token: %s", err)
}
return token
})

client := logcache.NewClient(logCacheAddr, logcache.WithHTTPClient(c))

Expand Down
Loading