当前位置: 首页>>代码示例>>Golang>>正文


Golang protolog.Debug函数代码示例

本文整理汇总了Golang中go/pedge/io/protolog.Debug函数的典型用法代码示例。如果您正苦于以下问题:Golang Debug函数的具体用法?Golang Debug怎么用?Golang Debug使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了Debug函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。

示例1: run

func (n *nodeRunner) run() error {
	var err error
	for name, parentChan := range n.parentChans {
		protolog.Debug(&NodeWaiting{Node: n.nodeName, ParentNode: name})
		select {
		case parentErr := <-parentChan:
			if parentErr != nil {
				err = parentErr
			}
			continue
		case <-n.cancel:
			return err
		}
	}
	protolog.Debug(&NodeFinishedWaiting{Node: n.nodeName, ParentError: errorString(err)})
	if err == nil {
		protolog.Info(&NodeStarting{Node: n.nodeName})
		err = n.f()
		protolog.Info(&NodeFinished{Node: n.nodeName, Error: errorString(err)})
	}
	for name, childChan := range n.childrenChans {
		protolog.Debug(&NodeSending{Node: n.nodeName, ChildNode: name, Error: errorString(err)})
		childChan <- err
		close(childChan)
	}
	return err
}
开发者ID:henrylee2cn,项目名称:pachyderm,代码行数:27,代码来源:node_runner.go

示例2: Open

func (f *file) Open(ctx context.Context, request *fuse.OpenRequest, response *fuse.OpenResponse) (_ fs.Handle, retErr error) {
	defer func() {
		protolog.Debug(&FileRead{&f.Node, errorToString(retErr)})
	}()
	atomic.AddInt32(&f.handles, 1)
	return f, nil
}
开发者ID:angelabier1,项目名称:pachyderm,代码行数:7,代码来源:filesystem.go

示例3: execSubvolumeExists

func execSubvolumeExists(path string) (result bool) {
	defer func() {
		protolog.Debug(&SubvolumeExists{path, result})
	}()
	_, err := os.Stat(path)
	return err == nil
}
开发者ID:alexdebrie,项目名称:pachyderm,代码行数:7,代码来源:driver.go

示例4: announceFrontend

func (a *sharder) announceFrontend(
	address string,
	frontend Frontend,
	versionChan chan int64,
	cancel chan bool,
) error {
	frontendState := &FrontendState{
		Address: address,
		Version: InvalidVersion,
	}
	for {
		encodedFrontendState, err := marshaler.MarshalToString(frontendState)
		if err != nil {
			return err
		}
		if err := a.discoveryClient.Set(a.frontendStateKey(address), encodedFrontendState, holdTTL); err != nil {
			protolog.Printf("Error setting server state: %s", err.Error())
		}
		protolog.Debug(&SetFrontendState{frontendState})
		select {
		case <-cancel:
			return nil
		case version := <-versionChan:
			frontendState.Version = version
		case <-time.After(time.Second * time.Duration(holdTTL/2)):
		}
	}
}
开发者ID:angelabier1,项目名称:pachyderm,代码行数:28,代码来源:sharder.go

示例5: RunIO

// RunIO runs the command with the given IO and arguments.
func RunIO(ioObj IO, args ...string) error {
	if len(args) == 0 {
		return ErrNoArgs
	}
	var debugStderr io.ReadWriter
	stderr := ioObj.Stderr
	if globalDebug {
		debugStderr = bytes.NewBuffer(nil)
		if stderr == nil {
			stderr = debugStderr
		} else {
			stderr = io.MultiWriter(stderr, debugStderr)
		}
	}
	cmd := exec.Command(args[0], args[1:]...)
	cmd.Stdin = ioObj.Stdin
	cmd.Stdout = ioObj.Stdout
	cmd.Stderr = stderr
	if globalDebug {
		protolog.Debug(&RunningCommand{Args: strings.Join(args, " ")})
	}
	if err := cmd.Run(); err != nil {
		if debugStderr != nil {
			data, _ := ioutil.ReadAll(debugStderr)
			if data != nil && len(data) > 0 {
				return fmt.Errorf("%s: %s\n\t%s", strings.Join(args, " "), err.Error(), string(data))
			}
		}
		return fmt.Errorf("%s: %s", strings.Join(args, " "), err.Error())
	}
	return nil
}
开发者ID:klucar,项目名称:pachyderm,代码行数:33,代码来源:pkgexec.go

示例6: RunWithOptions

func RunWithOptions(runOptions RunOptions, args ...string) error {
	if len(args) == 0 {
		return errors.New("run called with no args")
	}
	var debugStderr io.ReadWriter
	stderr := runOptions.stderr
	if debug {
		debugStderr = bytes.NewBuffer(nil)
		if stderr == nil {
			stderr = debugStderr
		} else {
			stderr = io.MultiWriter(stderr, debugStderr)
		}
	}
	cmd := exec.Command(args[0], args[1:]...)
	cmd.Stdin = runOptions.stdin
	cmd.Stdout = runOptions.stdout
	cmd.Stderr = stderr
	argsString := strings.Join(args, " ")
	protolog.Debug(&RunningCommand{Args: argsString})
	if err := cmd.Run(); err != nil {
		if debugStderr != nil {
			data, _ := ioutil.ReadAll(debugStderr)
			if data != nil && len(data) > 0 {
				return fmt.Errorf("%s: %s\n\t%s", argsString, err.Error(), string(data))
			}
		}
		return fmt.Errorf("%s: %s", argsString, err.Error())
	}
	return nil
}
开发者ID:sr,项目名称:pachyderm,代码行数:31,代码来源:executil.go

示例7: announceState

func (a *discoveryAddresser) announceState(
	id string,
	address string,
	server Server,
	versionChan chan int64,
	cancel chan bool,
) error {
	serverState := &proto.ServerState{
		Id:      id,
		Address: address,
		Version: InvalidVersion,
	}
	for {
		shards, err := server.LocalShards()
		if err != nil {
			return err
		}
		serverState.Shards = shards
		encodedServerState, err := marshaler.MarshalToString(serverState)
		if err != nil {
			return err
		}
		if err := a.discoveryClient.Set(a.serverStateKey(id), encodedServerState, holdTTL); err != nil {
			return err
		}
		protolog.Debug(&log.SetServerState{serverState})
		select {
		case <-cancel:
			return nil
		case version := <-versionChan:
			serverState.Version = version
		case <-time.After(time.Second * time.Duration(holdTTL/2)):
		}
	}
}
开发者ID:bereal,项目名称:pachyderm,代码行数:35,代码来源:discovery_addresser.go

示例8: execTransID

func execTransID(path string) (result string, retErr error) {
	defer func() {
		protolog.Debug(&TransID{path, result, errorToString(retErr)})
	}()
	//  "9223372036854775810" == 2 ** 63 we use a very big number there so that
	//  we get the transid of the from path. According to the internet this is
	//  the nicest way to get it from btrfs.
	var buffer bytes.Buffer
	if err := pkgexec.RunStdout(&buffer, "btrfs", "subvolume", "find-new", path, "9223372036854775808"); err != nil {
		return "", err
	}
	scanner := bufio.NewScanner(&buffer)
	for scanner.Scan() {
		// scanner.Text() looks like this:
		// transid marker was 907
		// 0       1      2   3
		tokens := strings.Split(scanner.Text(), " ")
		if len(tokens) != 4 {
			return "", fmt.Errorf("pachyderm: failed to parse find-new output")
		}
		return tokens[3], nil
	}
	if scanner.Err() != nil {
		return "", scanner.Err()
	}
	return "", fmt.Errorf("pachyderm: empty output from find-new")
}
开发者ID:mehulsbhatt,项目名称:pachyderm,代码行数:27,代码来源:driver.go

示例9: execSubvolumeExists

func execSubvolumeExists(path string) (result bool) {
	defer func() {
		protolog.Debug(&SubvolumeExists{path, result})
	}()
	if err := pkgexec.Run("btrfs", "subvolume", "show", path); err != nil {
		return false
	}
	return true
}
开发者ID:mehulsbhatt,项目名称:pachyderm,代码行数:9,代码来源:driver.go

示例10: execSend

func execSend(path string, parent string, diff io.Writer) (retErr error) {
	defer func() {
		protolog.Debug(&Send{path, parent, errorToString(retErr)})
	}()
	if parent == "" {
		return pkgexec.RunStdout(diff, "btrfs", "send", path)
	}
	return pkgexec.RunStdout(diff, "btrfs", "send", "-p", parent, path)
}
开发者ID:mehulsbhatt,项目名称:pachyderm,代码行数:9,代码来源:driver.go

示例11: Lookup

func (d *directory) Lookup(ctx context.Context, name string) (result fs.Node, retErr error) {
	defer func() {
		protolog.Debug(&DirectoryLookup{&d.Node, name, getNode(result), errorToString(retErr)})
	}()
	if d.File.Commit.Repo.Name == "" {
		return d.lookUpRepo(ctx, name)
	}
	if d.File.Commit.Id == "" {
		return d.lookUpCommit(ctx, name)
	}
	return d.lookUpFile(ctx, name)
}
开发者ID:angelabier1,项目名称:pachyderm,代码行数:12,代码来源:filesystem.go

示例12: Attr

func (d *directory) Attr(ctx context.Context, a *fuse.Attr) (retErr error) {
	defer func() {
		protolog.Debug(&DirectoryAttr{&d.Node, &Attr{uint32(a.Mode)}, errorToString(retErr)})
	}()
	a.Valid = time.Nanosecond
	if d.Write {
		a.Mode = os.ModeDir | 0775
	} else {
		a.Mode = os.ModeDir | 0555
	}
	a.Inode = d.fs.inode(d.File)
	return nil
}
开发者ID:angelabier1,项目名称:pachyderm,代码行数:13,代码来源:filesystem.go

示例13: execSubvolumeFindNew

func execSubvolumeFindNew(commit string, fromCommit string, out io.Writer) (retErr error) {
	defer func() {
		protolog.Debug(&SubvolumeFindNew{commit, fromCommit, errorToString(retErr)})
	}()
	if fromCommit == "" {
		return pkgexec.RunStdout(out, "btrfs", "subvolume", "find-new", commit, "0")
	}
	transid, err := execTransID(fromCommit)
	if err != nil {
		return err
	}
	return pkgexec.RunStdout(out, "btrfs", "subvolume", "find-new", commit, transid)
}
开发者ID:mehulsbhatt,项目名称:pachyderm,代码行数:13,代码来源:driver.go

示例14: Mkdir

func (d *directory) Mkdir(ctx context.Context, request *fuse.MkdirRequest) (result fs.Node, retErr error) {
	defer func() {
		protolog.Debug(&DirectoryMkdir{&d.Node, getNode(result), errorToString(retErr)})
	}()
	if d.File.Commit.Id == "" {
		return nil, fuse.EPERM
	}
	if err := pfsutil.MakeDirectory(d.fs.apiClient, d.File.Commit.Repo.Name, d.File.Commit.Id, path.Join(d.File.Path, request.Name)); err != nil {
		return nil, err
	}
	localResult := d.copy()
	localResult.File.Path = path.Join(localResult.File.Path, request.Name)
	return localResult, nil
}
开发者ID:angelabier1,项目名称:pachyderm,代码行数:14,代码来源:filesystem.go

示例15: Write

func (f *file) Write(ctx context.Context, request *fuse.WriteRequest, response *fuse.WriteResponse) (retErr error) {
	defer func() {
		protolog.Debug(&FileWrite{&f.Node, errorToString(retErr)})
	}()
	written, err := pfsutil.PutFile(f.fs.apiClient, f.File.Commit.Repo.Name, f.File.Commit.Id, f.File.Path, request.Offset, bytes.NewReader(request.Data))
	if err != nil {
		return err
	}
	response.Size = written
	if f.size < request.Offset+int64(written) {
		f.size = request.Offset + int64(written)
	}
	return nil
}
开发者ID:angelabier1,项目名称:pachyderm,代码行数:14,代码来源:filesystem.go


注:本文中的go/pedge/io/protolog.Debug函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。