小编Dan*_*y G的帖子

如何让 google-cloud-ops-agent 日志记录识别特殊的“严重性”字段

我正在 google 计算实例上运行 ZooKeeper 并尝试设置 google-cloud-ops-agent 以正确解析日志。我已经完成了大部分工作,但很难让它识别该severity区域。

文档指出这severity是一个将从 中提取的特殊字段jsonPayload,但我没有看到这种情况发生。

我的/etc/google-cloud-ops-agent/config.yaml

logging:
  receivers:
    zookeeper:
      type: files
      include_paths:
      - /zookeeper/logs/zookeeper.log
  processors:
    zookeeper:
      type: parse_regex
      field: message
      regex: '^(?<time>.{23}) \[(?<zknode>[^\]]+)] - (?<severity>\S+)\s+ \[(?<class>[^\]]+)] - (?<msg>.*)$'
      time_key: time
      time_format: "%Y-%m-%d %H:%M:%S,%L"
  service:
    pipelines:
      zookeeper:
        receivers: [zookeeper]
        processors: [zookeeper]
Run Code Online (Sandbox Code Playgroud)

证据 parse_regex 正常工作(但注意严重性仍然存在于jsonPayload

示例云日志记录输出

google-cloud-platform google-cloud-logging google-cloud-ops-agent

9
推荐指数
1
解决办法
2263
查看次数

F#如何设置可以使用FsUnit的FAKE项目

我正在尝试设置一个可以运行FsUnit的基本FAKE F#项目,但我无法弄清楚如何解决这些Method not found: 'Void FsUnit.TopLevelOperators.should(Microsoft.FSharp.Core.FSharpFunc`2<!!0,!!1>, !!0, System.Object)'错误.

我已经阅读了以下似乎相关的帖子,但我显然仍然不喜欢它:

我已经JunkTest使用以下设置创建了一个库项目:

paket.dependencies

source https://www.nuget.org/api/v2
nuget FAKE
nuget FSharp.Core
nuget FsUnit
nuget NUnit
nuget NUnit.Console
Run Code Online (Sandbox Code Playgroud)

paket.references

FSharp.Core
FsUnit
NUnit
Run Code Online (Sandbox Code Playgroud)

JunkTest.fs

module JunkTest

open FsUnit
open NUnit.Framework

[<Test>]
let ``Example Test`` () =
    1 |> should equal 1               // this does not work
    //Assert.That(1, Is.EqualTo(1))   // this works (NUnit)
Run Code Online (Sandbox Code Playgroud)

build.fsx(相关部分)

Target "Test" (fun _ ->
    !! (buildDir + "JunkTest.dll")
    |> NUnit3 (fun p ->
        {p …
Run Code Online (Sandbox Code Playgroud)

f# fsunit f#-fake visual-studio-code

6
推荐指数
1
解决办法
407
查看次数

F#提供downcast类型作为函数参数

我正在做一些与一些C#库的接口,需要做一些对象的转换.我认为可以通过将downcast的类型作为参数传递来解决一些重复的代码.

// transform exceptions into Option type
let tryFn fn =
    try Some(fn()) with ex -> None

let tryCastString (o: obj) = tryFn (fun () -> o :?> string)
let tryCastUInt64 (o: obj) = tryFn (fun () -> o :?> uint64)

// I would like to do something like the following
let tryCast (o: obj) (t: type) = tryFn (fun () -> o :?> t)
Run Code Online (Sandbox Code Playgroud)

f#

2
推荐指数
1
解决办法
80
查看次数

Graal在java中嵌入了javascript,如何从java调用列表/数组上的映射?是否可以?

我正在使用 Graal 将 javascript 作为来宾语言运行,并且想知道是否有一种方法可以Array.map在主机(Java)对象或代理上使用 javascript 功能。下面是演示 Kotlin 代码,但应该与 Java 代码足够接近。

fun main() {
    val context = Context.newBuilder().build()
    val javaOutputList = mutableListOf<Integer>()
    val javaList = listOf(2, 2, 3, 4, 5)
    val proxyJavaList = ProxyArray.fromList(javaList)

    context.polyglotBindings.apply {
        putMember("javaOutputList", javaOutputList)
        putMember("javaList", javaList)
        putMember("proxyJavaList", proxyJavaList)
    }

    val script = """
        var javaOutputList = Polyglot.import('javaOutputList');
        var javaList = Polyglot.import('javaList');
        var proxyJavaList = Polyglot.import('proxyJavaList');

        var abc = [1, 2, 3];
        abc.forEach(x => javaOutputList.add(x));      // WORKS

        //abc.map(x => x + 1)             // WORKS
        //javaList.map(x …
Run Code Online (Sandbox Code Playgroud)

java graalvm

1
推荐指数
1
解决办法
893
查看次数