func (app *App) Log(message, source, unit string) error {
	messages := strings.Split(message, "\n")
	logs := make([]interface{}, 0, len(messages))
	for _, msg := range messages {
		if msg != "" {
			l := Applog{
				Date:    time.Now().In(time.UTC),
				Message: msg,
				Source:  source,
				AppName: app.Name,
				Unit:    unit,
			}
			logs = append(logs, l)
		}
	}
	if len(logs) > 0 {
		conn, err := db.LogConn()
		if err != nil {
			return err
		}
		defer conn.Close()
		return conn.AppLogCollection(app.Name).Insert(logs...)
	}
	return nil
}
func (app *App) Log(message, source, unit string) error {
	messages := strings.Split(message, "\n")
	logs := make([]interface{}, 0, len(messages))
	for _, msg := range messages {
		if msg != "" {
			l := Applog{
				Date:    time.Now().In(time.UTC),
				Message: msg,
				Source:  source,
				AppName: app.Name,
				Unit:    unit,
			}
			logs = append(logs, l)
		}
	}
	if len(logs) > 0 {
		conn, err := db.LogConn()
		if err != nil {
			return err
		}
		defer conn.Close()
		return conn.AppLogCollection(app.Name).Insert(logs...)
	}
	return nil
}
func ( app * App ) Log ( message , source , unit string ) error { messages := strings . Split ( message , " \n " ) logs := make ( [ ] interface { } , 0 , len ( messages ) ) for _ , msg := range messages { if msg != " " { l := Applog { Date : time . Now ( ) . In ( time . UTC ) , Message : msg , Source : source , AppName : app . Name , Unit : unit , } logs = append ( logs , l ) } } if len ( logs ) > 0 { conn , err := db . LogConn ( ) if err != nil { return err } defer conn . Close ( ) return conn . AppLogCollection ( app . Name ) . Insert ( logs ... ) } return nil }
// Log adds a log message to the app. Specifying a good source is good so the
// user can filter where the message come from.
Log adds a log message to the app . Specifying a good source is good so the user can filter where the message come from .