[chore] Silence memlimit package (#3002)
The memlimit package started to log any error returned by automemlimit. This updates our implementation to call SetGoMemLimitWithOpts() instead which uses the same defaults as automemlimit except for being initialised with a noop logger. We check the returned error for a particular substring, as when cgroups isn't available even when running on a Linux system that's not a problem. If it's anything but that error, we log it at the warning level so that admins can still diagnose other cgroup related issues. Fixes #2983 Co-authored-by: tobi <31960611+tsmethurst@users.noreply.github.com>
This commit is contained in:
parent
38cd889f7b
commit
3c86bd890c
|
@ -24,9 +24,11 @@ import (
|
||||||
"net/http"
|
"net/http"
|
||||||
"os"
|
"os"
|
||||||
"os/signal"
|
"os/signal"
|
||||||
|
"strings"
|
||||||
"syscall"
|
"syscall"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
|
"github.com/KimMachineGun/automemlimit/memlimit"
|
||||||
"github.com/gin-gonic/gin"
|
"github.com/gin-gonic/gin"
|
||||||
"github.com/superseriousbusiness/gotosocial/cmd/gotosocial/action"
|
"github.com/superseriousbusiness/gotosocial/cmd/gotosocial/action"
|
||||||
"github.com/superseriousbusiness/gotosocial/internal/api"
|
"github.com/superseriousbusiness/gotosocial/internal/api"
|
||||||
|
@ -60,9 +62,6 @@ import (
|
||||||
"github.com/superseriousbusiness/gotosocial/internal/transport"
|
"github.com/superseriousbusiness/gotosocial/internal/transport"
|
||||||
"github.com/superseriousbusiness/gotosocial/internal/typeutils"
|
"github.com/superseriousbusiness/gotosocial/internal/typeutils"
|
||||||
"github.com/superseriousbusiness/gotosocial/internal/web"
|
"github.com/superseriousbusiness/gotosocial/internal/web"
|
||||||
|
|
||||||
// Inherit memory limit if set from cgroup
|
|
||||||
_ "github.com/KimMachineGun/automemlimit"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// Start creates and starts a gotosocial server
|
// Start creates and starts a gotosocial server
|
||||||
|
@ -71,6 +70,12 @@ var Start action.GTSAction = func(ctx context.Context) error {
|
||||||
log.Warnf(ctx, "could not set CPU limits from cgroup: %s", err)
|
log.Warnf(ctx, "could not set CPU limits from cgroup: %s", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if _, err := memlimit.SetGoMemLimitWithOpts(); err != nil {
|
||||||
|
if !strings.Contains(err.Error(), "cgroup mountpoint does not exist") {
|
||||||
|
log.Warnf(ctx, "could not set Memory limits from cgroup: %s", err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
var (
|
var (
|
||||||
// Define necessary core variables
|
// Define necessary core variables
|
||||||
// before anything so we can prepare
|
// before anything so we can prepare
|
||||||
|
|
Loading…
Reference in New Issue