func Init(license string, appName string, lang string, langVersion string) error { C.newrelic_register_message_handler((*[0]byte)(C.newrelic_message_handler)) clicense := C.CString(license) defer C.free(unsafe.Pointer(clicense)) cappName := C.CString(appName) defer C.free(unsafe.Pointer(cappName)) clang := C.CString(lang) defer C.free(unsafe.Pointer(clang)) clangVersion := C.CString(langVersion) defer C.free(unsafe.Pointer(clangVersion)) rv := C.newrelic_init(clicense, cappName, clang, clangVersion) return nrError(rv, "initialize") }
// InitEmbeddedMode registers the message handler with the newrelic embedded message handler. // and calls Init. // // NOTE: I haven't been able to get embedded mode to work. Daemon mode is the only option // at the momemt. func InitEmbeddedMode(license string, appName string) (int, error) { C.newrelic_register_message_handler((*[0]byte)(C.newrelic_message_handler)) return doInit(license, appName, "Go", runtime.Version()) }