@@ -273,7 +273,7 @@ func (cmd *CmdDebug) Run() error {
273273 links , err = cmd .linkHandler .List (lopts )
274274 if err == nil && links != nil && len (links ) != 0 {
275275 for _ , link := range links {
276- err := utils .WriteObject (link , path + link .Name + link .Spec .Endpoints [0 ].Host , tw )
276+ err := utils .WriteObject (link , path + link .Name + "-" + link .Spec .Endpoints [0 ].Host , tw )
277277 if err != nil {
278278 return err
279279 }
@@ -363,47 +363,74 @@ func (cmd *CmdDebug) Run() error {
363363 }
364364
365365 //logs and skupper-router statistics
366- if err := os .Setenv ("SKUPPER_PLATFORM" , platform ); err == nil {
367- cli , err := internalclient .NewCompatClient (os .Getenv ("CONTAINER_ENDPOINT" ), "" )
366+ if platform == "linux" {
367+ user := "--user"
368+ if os .Getuid () == 0 {
369+ user = ""
370+ }
371+ rtrName := "skupper-" + cmd .namespace + ".service"
372+ pv , err = utils .RunCommand ("journalctl" , user , "-u" , rtrName , "--no-pager" , "--all" )
368373 if err == nil {
369- rtrContainerName := cmd .namespace + "-skupper-router"
370- if container , err := cli .ContainerInspect (rtrContainerName ); err == nil {
371- encodedOutput , _ := utils .Encode ("yaml" , container )
372- utils .WriteTar (rpath + "Container-" + container .Name + ".yaml" , []byte (encodedOutput ), time .Now (), tw )
373- }
374-
375- localRouterAddress , err := runtime .GetLocalRouterAddress (cmd .namespace )
374+ utils .WriteTar (path + "logs/" + rtrName + ".txt" , pv , time .Now (), tw )
375+ }
376+ localRouterAddress , err := runtime .GetLocalRouterAddress (cmd .namespace )
377+ if err == nil {
378+ certs := runtime .GetRuntimeTlsCert (cmd .namespace , "skupper-local-client" )
376379 if err == nil {
377380 for x := range flags {
378- skStatCommand := []string {
379- "/bin/skstat" , flags [x ],
381+ pv , err = utils .RunCommand ("/usr/bin/skstat" , flags [x ],
380382 "-b" , localRouterAddress ,
381- "--ssl-certificate" , "/etc/skupper-router/runtime/certs/skupper-local-client/tls.crt" ,
382- "--ssl-key" , "/etc/skupper-router/runtime/certs/skupper-local-client/tls.key" ,
383- "--ssl-trustfile" , "/etc/skupper-router/runtime/certs/skupper-local-client/ca.crt" ,
384- }
385-
386- out , err := cli .ContainerExec (rtrContainerName , skStatCommand ) //strings.Split(skStatCommand, " "))
383+ "--ssl-certificate" , certs .CertPath ,
384+ "--ssl-key" , certs .KeyPath ,
385+ "--ssl-trustfile" , certs .CaPath )
387386 if err == nil {
388- utils .WriteTar (path + "skstat/" + rtrContainerName + "-skstat" + flags [x ]+ ".txt" , [] byte ( out ) , time .Now (), tw )
387+ utils .WriteTar (path + "skstat/" + "skrouterd" + "-skstat" + flags [x ]+ ".txt" , pv , time .Now (), tw )
389388 }
390389 }
391390 }
392-
393- logs , err := cli .ContainerLogs (rtrContainerName )
391+ }
392+ } else {
393+ if err := os .Setenv ("SKUPPER_PLATFORM" , platform ); err == nil {
394+ cli , err := internalclient .NewCompatClient (os .Getenv ("CONTAINER_ENDPOINT" ), "" )
394395 if err == nil {
395- utils .WriteTar (rpath + "logs/" + rtrContainerName + ".txt" , []byte (logs ), time .Now (), tw )
396- }
396+ rtrContainerName := cmd .namespace + "-skupper-router"
397+ if container , err := cli .ContainerInspect (rtrContainerName ); err == nil {
398+ encodedOutput , _ := utils .Encode ("yaml" , container )
399+ utils .WriteTar (rpath + "Container-" + container .Name + ".yaml" , []byte (encodedOutput ), time .Now (), tw )
400+ }
397401
398- ctlContainerName := "system-controller"
399- if container , err := cli .ContainerInspect (ctlContainerName ); err == nil {
400- encodedOutput , _ := utils .Encode ("yaml" , container )
401- utils .WriteTar (rpath + "Container-" + container .Name + ".yaml" , []byte (encodedOutput ), time .Now (), tw )
402- }
402+ localRouterAddress , err := runtime .GetLocalRouterAddress (cmd .namespace )
403+ if err == nil {
404+ for x := range flags {
405+ skStatCommand := []string {
406+ "/bin/skstat" , flags [x ],
407+ "-b" , localRouterAddress ,
408+ "--ssl-certificate" , "/etc/skupper-router/runtime/certs/skupper-local-client/tls.crt" ,
409+ "--ssl-key" , "/etc/skupper-router/runtime/certs/skupper-local-client/tls.key" ,
410+ "--ssl-trustfile" , "/etc/skupper-router/runtime/certs/skupper-local-client/ca.crt" ,
411+ }
412+ out , err := cli .ContainerExec (rtrContainerName , skStatCommand ) //strings.Split(skStatCommand, " "))
413+ if err == nil {
414+ utils .WriteTar (path + "skstat/" + rtrContainerName + "-skstat" + flags [x ]+ ".txt" , []byte (out ), time .Now (), tw )
415+ }
416+ }
417+ }
403418
404- logs , err = cli .ContainerLogs (ctlContainerName )
405- if err == nil {
406- utils .WriteTar (rpath + "logs/" + ctlContainerName + ".txt" , []byte (logs ), time .Now (), tw )
419+ logs , err := cli .ContainerLogs (rtrContainerName )
420+ if err == nil {
421+ utils .WriteTar (rpath + "logs/" + rtrContainerName + ".txt" , []byte (logs ), time .Now (), tw )
422+ }
423+
424+ ctlContainerName := "system-controller"
425+ if container , err := cli .ContainerInspect (ctlContainerName ); err == nil {
426+ encodedOutput , _ := utils .Encode ("yaml" , container )
427+ utils .WriteTar (rpath + "Container-" + container .Name + ".yaml" , []byte (encodedOutput ), time .Now (), tw )
428+ }
429+
430+ logs , err = cli .ContainerLogs (ctlContainerName )
431+ if err == nil {
432+ utils .WriteTar (rpath + "logs/" + ctlContainerName + ".txt" , []byte (logs ), time .Now (), tw )
433+ }
407434 }
408435 }
409436 }
0 commit comments