将控制台日志以角度2移动到kibana

时间:2017-06-06 04:46:13

标签: angular kibana

我有角度2的要求,我希望将所有控制台日志移动到像Logstash这样的服务器,并希望在Kibana中查看这些日志。创建了我自己的日志服务,如下所示。

import { Injectable } from '@angular/core';

@Injectable()
export class LoggerService {
    enabled = true;
    noop = () => {};

    constructor() {
                // You can do a check on your environment or some other flag to 
                // enable/disable logging
        // if ((<any>'<%= ENV %>') === 'prod') this.enabled = false;
    }

    get debug() {
        if (this.enabled) return console.debug.bind(console);
        return this.noop;
    }

    get error() {
        if (this.enabled) return console.error.bind(console);
        return this.noop;
    }

    get log() {
        if (this.enabled) return console.log.bind(console);
        return this.noop;
    }

    get info() {
        if (this.enabled) return console.info.bind(console);
        return this.noop;
    }

    get warn() {
        if (this.enabled) return console.warn.bind(console);
        return this.noop;
    }

}

所以我可以在其他一些组件中使用该服务,如下所示。

构造函数(private loggerService LoggerService){

 this.loggerService.log("some error");

}

但是上面的行在控制台中打印日志。我想将这些日志移动到服务器,以便我们可以随时查看。我为这个要求写了很多东西,但没有得到angular2中的任何东西。但发现了一个博客,它以角1.x实现。

https://blog.donkeycode.com/superpower-angular-logging-with-elasticsearch-logstash-and-kibana-part-1-cfb612da4b87

有人可以在这里帮助我。提前谢谢。

0 个答案:

没有答案