Package logging defines Logger interface with implementations on top of Logrus library and Appengine context. Unfortunately standard library doesn't define any Logger interface (only struct). And even worse: GAE logger is exposing different set of methods. Some additional layer is needed to unify the logging.
Package logging is intended to be used from packages that support both local and GAE environments. Such packages should not use global logger but must accept instances of Logger interface as parameters in functions. Then callers can pass logrus.Logger or appengine.Context depending on where the code is running.
Libraries under infra/libs/* MUST use infra/libs/logger instead of directly calling to Logrus library.