我有一个简单的JavaFX应用程序,允许用户查询数据库并查看表中的数据.
我想让用户能够单击一个表格单元格并使用标准剪贴板键击将该单元格中的文本复制到剪贴板:适用于Win/Linux的ctrl-c或适用于Mac的cmd-c.仅供参考,文本输入控件默认支持基本复制/粘贴.
我正在使用标准的javafx.scene.control.TableView类.有没有一种简单的方法来启用单元格复制?我做了一些搜索,我看到其他人创建自定义菜单命令...我不想创建自定义菜单,我只想要基本的键盘复制来处理单个单元格.
我正在使用单一选择模式,但如果需要,我可以更改为其他内容:
TableView<Document> tableView = new TableView<Document>();
tableView.getSelectionModel().setCellSelectionEnabled(true);
tableView.getSelectionModel().setSelectionMode(SelectionMode.SINGLE);
Run Code Online (Sandbox Code Playgroud) 我首先进行了cabal更新/升级过程,所以我有cabal-install-1.20.0.3.然后我做:
cabal install idris
Run Code Online (Sandbox Code Playgroud)
我明白了:
...
idris-0.9.14.1 (new version)
The following packages are likely to be broken by the reinstalls:
network-2.5.0.0
HTTP-4000.2.17
Use --force-reinstalls if you want to install anyway.
Run Code Online (Sandbox Code Playgroud)
(如果重要,我正在运行OS X 10.9.4)
我希望得到最少两个可能的值,或者如果一个没有得到非任何一个,或者如果两个输入都没有则返回任何值.我可以编写一个简单的函数来执行此操作,但我怀疑有一种方法可以在不编写自定义函数的情况下执行此操作.对不起,如果这是一个小问题,但有比使用这个自定义功能更简单的方法吗?
minMaybe :: Ord a => Maybe a -> Maybe a -> Maybe a
minMaybe Nothing b = b
minMaybe a Nothing = a
minMaybe (Just a) (Just b) = Just $ min a b
Run Code Online (Sandbox Code Playgroud) 我看到 Kafka Connect 可以以 Avro 或 JSON 格式写入 S3。但是没有 Parquet 支持。添加这个会有多难?
from slimit import minify
if __name__ == "__main__":
print("start")
# Normally, I pass real JavaScript. For this issue, an empty string reproduces problem.
minify("", mangle=True)
print("exit")
Run Code Online (Sandbox Code Playgroud)
这会触发以下控制台输出。
start
WARNING: Couldn't write lextab module <module 'slimit.lextab' from '/Users/kurtostfeld/samba/wrapad/venv/lib/python2.7/site-packages/slimit/lextab.pyc'>. Won't overwrite existing lextab module
WARNING: yacc table file version is out of date
WARNING: Token 'IMPORT' defined, but not used
WARNING: Token 'BLOCK_COMMENT' defined, but not used
WARNING: Token 'ENUM' defined, but not used
WARNING: Token 'EXTENDS' defined, but not used
WARNING: …
Run Code Online (Sandbox Code Playgroud) 重新启动Kafka Connect S3接收器任务后,它重新开始从主题开头一直写入并写入旧记录的重复副本.换句话说,Kafka Connect似乎失去了它的位置.
所以,我想Kafka Connect将当前的偏移位置信息存储在内部connect-offsets
主题中.那个话题是空的,我认为这是问题的一部分.
另外两个内部主题connect-statuses
和connect-configs
不为空.connect-statuses
有52个条目.connect-configs
有6个条目; 三为每两个宿连接器的我已经配置:connector-<name>
,task-<name>-0
,commit-<name>
.
在运行此文档之前,我手动创建了文档中指定的内部Kafka Connect主题:
/usr/bin/kafka-topics --create --zookeeper localhost:2181 --topic connect-configs --replication-factor 3 --partitions 1 --config cleanup.policy=compact
/usr/bin/kafka-topics --create --zookeeper localhost:2181 --topic connect-offsets --replication-factor 3 --partitions 50 --config cleanup.policy=compact
/usr/bin/kafka-topics --create --zookeeper localhost:2181 --topic connect-statuses --replication-factor 3 --partitions 10 --config cleanup.policy=compact
Run Code Online (Sandbox Code Playgroud)
我可以验证connect-offsets
主题似乎是正确创建的:
/usr/bin/kafka-topics --zookeeper localhost:2181 --describe --topic connect-offsets
Topic:connect-offsets PartitionCount:50 ReplicationFactor:3 Configs:cleanup.policy=compact
Topic: connect-offsets Partition: 0 Leader: …
Run Code Online (Sandbox Code Playgroud) 我有一个 Kafka Connect 接收器正在运行。我想监控这个延迟。
我可以通过 shell 进入代理并使用kafka-consumer-groups
如下工具来手动获取延迟:
unset JMX_PORT; /usr/bin/kafka-consumer-groups --bootstrap-server localhost:9092 --group connect-<my-kafka-connect-connector> --describe
Run Code Online (Sandbox Code Playgroud)
这会给我类似的东西:
GROUP TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG CONSUMER-ID HOST CLIENT-ID
connect-<my-kafka-connect-connector> <my-topic> 0 1414248272 2775658553 1361410281 connector-consumer-<my-kafka-connect-connector>-<uuid> /<my-host-ip> connector-consumer-<my-kafka-connect-connector>-0
Run Code Online (Sandbox Code Playgroud)
这就是我想要的滞后信息,但我希望将其放在 Prometheus 指标中,我可以将其放在仪表板上并进行监控和设置警报。
我正在获取 Kafka Broker 指标和 Kafka Connect 指标,这两个指标似乎都没有此信息。curl
我已经用和遍历了 Prometheus 指标输出,grep
但不存在此信息。
我通过官方 Confluence Helm 图表(https://github.com/confluenceinc/cp-helm-charts/tree/master/charts/cp-kafka-connect)运行 Kafka Connect,并使用默认的 Prometheus 指标导出。这有效,我可以获得基本指标,但没有有关滞后的信息:
GROUP TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG CONSUMER-ID HOST CLIENT-ID
connect-<my-kafka-connect-connector> <my-topic> 0 1414248272 2775658553 1361410281 connector-consumer-<my-kafka-connect-connector>-<uuid> /<my-host-ip> connector-consumer-<my-kafka-connect-connector>-0 …
Run Code Online (Sandbox Code Playgroud) 我有一个 EKS Kubernetes 1.16.x。具有三个标记为 的公共子网kubernetes.io/role/elb: 1
和三个标记为 的私有子网的集群kubernetes.io/role/internal-elb: 1
我正在尝试创建一个内部 NLB LoadBalancer 服务。在内部,我希望它托管在三个私有子网而不是三个公共子网上。
我正在关注https://docs.aws.amazon.com/eks/latest/userguide/load-balancing.html 上的文档
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/aws-load-balancer-type: nlb
service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http
service.beta.kubernetes.io/aws-load-balancer-internal: true
name: grafana-nlb
namespace: prometheus
spec:
ports:
- name: service
port: 80
protocol: TCP
targetPort: 3000
selector:
app.kubernetes.io/instance: prom
app.kubernetes.io/name: grafana
type: LoadBalancer
Run Code Online (Sandbox Code Playgroud)
如果我省略service.beta.kubernetes.io/aws-load-balancer-internal: true
注释,一切似乎都可以完美运行,并且完全符合我的预期。我得到一个仅托管在三个公共子网上的公共 NLB。我可以通过 AWS cli 看到这一点,带有aws elbv2 describe-load-balancers
, 带有"Scheme": "internet-facing"
, "Type": "network",
。
如果使用service.beta.kubernetes.io/aws-load-balancer-internal: true
注释创建它,我会得到一个经典的 ELB 而不是 NLB,而且它仍然是公开的。它"Scheme": …
官方文档展示了如何使用新的结构化日志记录包,但似乎省略了如何记录错误。
package main
import (
"fmt"
"log/slog"
"os"
)
func demoFunction() error {
return fmt.Errorf("oh no: %v", 123)
}
func main() {
logger := slog.New(slog.NewJSONHandler(os.Stdout, nil))
slog.SetDefault(logger)
slog.Info("info demo", "count", 3)
slog.Warn("warn demo", slog.String("somekey", "somevalue"))
slog.Error("error demo", slog.Int("someintkey", 123))
err := demoFunction()
if err != nil {
// Here I'm logging the error as a string, but I presume there is a better way
// possibly that will log stack trace info as well.
slog.Error("the demo function got an …
Run Code Online (Sandbox Code Playgroud) 使用Python 2.7.x + Django 1.9:
我创建了一个新的超级简单的Django骨架项目 django-admin startproject simple
作为一个健全性检查,我创建了一个views.py
带有简单视图的文件,该文件输出"hello world"类型测试消息和到该视图的url路径.我可以运行它,python manage.py runserver
它工作正常.
我models.py
用一个超级简单的Django ORM模型类创建一个文件.仅供参考,我的目标是使用现有的表和模式,因此我不希望ORM生成新表.
class SuperSimpleModel(models.Model):
some_value = models.CharField(blank=True, null=True)
class Meta:
managed = False
db_table = 'model_test_table'
Run Code Online (Sandbox Code Playgroud)
仅添加import models
到我的views.py
代码会导致在服务器启动时发生以下错误python manage.py runserver
:
"RuntimeError:Model类simple.models.SuperSimpleModel没有声明一个显式的app_label,也没有在INSTALLED_APPS的应用程序中,或者在加载应用程序之前导入了它."
我认为我的应用程序没有正确初始化?我把这个问题归结为上述简单的可重复步骤.我settings.py
在上面的步骤中没有改变任何内容.通常,我需要配置数据库,但我可以重现错误,甚至没有这样做.
apache-kafka ×3
python ×2
amazon-eks ×1
amazon-elb ×1
amazon-s3 ×1
cabal ×1
confluent ×1
django ×1
django-views ×1
go ×1
haskell ×1
idris ×1
javafx ×1
javafx-2 ×1
javafx-8 ×1
logging ×1
maybe ×1
nlb ×1
parquet ×1
python-2.7 ×1