* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package common
+package util
import (
- "encoding/json"
- "net/http"
+ "github.com/sirupsen/logrus"
+ "os"
)
-func RespondJSON(w http.ResponseWriter, status int, payload interface{}) {
- response, err := json.Marshal(payload)
- if err != nil {
- w.WriteHeader(http.StatusInternalServerError)
- w.Write([]byte(err.Error()))
- return
- }
- w.Header().Set("Content-Type", "application/json")
- w.WriteHeader(status)
- w.Write([]byte(response))
-}
+func GetLogger(logFile string, loggerLevel logrus.Level, file *os.File) *logrus.Logger {
-// respondError makes the error response with payload as json format
-func RespondError(w http.ResponseWriter, code int, message string) {
- RespondJSON(w, code, map[string]string{"error": message})
-}
+ logger := logrus.New()
+ logger.SetOutput(file)
+ logger.SetFormatter(&logrus.TextFormatter{
+ DisableColors: true,
+ FullTimestamp: true,
+ })
+ logger.SetLevel(loggerLevel)
+ logger.Info("logger created")
+ return logger
+}
\ No newline at end of file