AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-607547

questionto42standswithUkraine's questions

Martin Hope
questionto42
Asked: 2024-08-06 20:40:25 +0800 CST

如果粘贴失败并出现“至少一个连接管理器无法正确粘贴”,如何将完整的数据流任务 (DFT) 复制到另一个项目?

  • 6

如果粘贴项目连接管理器引发错误,如何将完整的数据流任务(DFT)从一个项目复制到另一个项目:

至少有一个连接管理器无法正确粘贴。

无法成功粘贴名为“MyConnMngr”的连接管理器。

无法创建连接管理器。

你调用的对象是空的。

(微软数据转换服务设计)

以下是该消息的完整副本。链接已失效:


TITLE: Microsoft Visual Studio
------------------------------

The designer could not paste one or more connection managers.

For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft%C2%AE%20Visual%20Studio%C2%AE&ProdVer=15.9.28307.2094&EvtSrc=Microsoft.DataTransformationServices.Design.SR&EvtID=PasteComponentsFailureCause_couldNotRestoreConnectionManagers&LinkId=20476

------------------------------
ADDITIONAL INFORMATION:

At least one connection manager could not be pasted correctly.
The connection manager with the name 'MyConnMngr' could not be pasted successfully.
The connection manager could not be created.
Object reference not set to an instance of an object. (Microsoft.DataTransformationServices.Design)

For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft%C2%AE%20Visual%20Studio%C2%AE&ProdVer=15.9.28307.2094&EvtSrc=Microsoft.DataTransformationServices.Design.SR&EvtID=RestoreConnectionManagers_AtLeastOneRestoreConnectionManagerErrorOccured&LinkId=20476

------------------------------
BUTTONS:

OK
------------------------------

如果只是这个连接管理器需要我重新从头开始构建,我就不会花时间回答这个问题了。但是这个错误导致整个 DFT 无法粘贴,我甚至无法一步一步复制粘贴任何框。

从整个 DFT 中粘贴的唯一内容是用于包的一个平面文件连接管理器。似乎无法粘贴项目的连接管理器。我在两个项目中尝试过。我知道有时对象仍然是项目中的文件,而不是项目资源管理器中显示的。这样的文件可以阻止粘贴同名的新对象,或者您至少会收到替换它的警告。因此,我将 DFT 粘贴到一个之前没有该名称或功能的连接管理器的项目中,但仍然出现错误。

我使用的是 2016 年的旧版 SSIS。也许新版本可以处理这个问题,但我对此表示怀疑。

copy
  • 1 个回答
  • 33 Views
Martin Hope
questionto42
Asked: 2024-08-05 21:18:27 +0800 CST

如果在关闭属性后 MARS 立即切换回“False”,我该如何在连接管理器中将 MARS 设置为“True”?或者为什么会这样?

  • 7

连接管理器写入表。大概每周一次,抛出错误:

连接正忙于处理另一命令的结果

SSIS 部署到 Microsoft SQL Server 2016 (SP3-CU1-GDR) (KB5040944) - 13.0.7037.1 (X64)。

我从MARS (Multiple Active Result Sets) - Microsoft Learn中了解到,缺少“MARS = True”会导致错误。但是,如果我在连接管理器的属性中将“MARS”更改为“True”,则只要单击“确定”,“MARS”设置就会变回“False”,这样当我随后打开属性时,粗体的“True”又会变为细的“False”:

在此处输入图片描述

我还检查了是否只打开连接管理器的属性就会触发“False”:我保存了更改而不打开属性,然后检查了 Git 日志,日志显示 MARS 设置更改为“True”后,单击“确定”后立即消失。它保存的是重试的默认设置(ConnectRetryCount = 1),我想知道允许更高的重试次数是否也会有所帮助。不过,我没有尝试过。

我还想知道通过在 xml 代码中而不是在 Visual Studio 中更改设置来强制设置是否有帮助,但我担心这可能会导致比我偶尔需要手动运行的包更糟糕的事情。不过,这可能值得一试,但我宁愿在检查奇怪的事情之前从别人那里得到一些见解。

为什么“MARS” = “True”设置会立即跳回“False”?我该如何将其更改为“True”?如果发生这种情况,我是否应该这样做?

ssis
  • 1 个回答
  • 66 Views
Martin Hope
questionto42
Asked: 2024-03-03 00:29:50 +0800 CST

如何获取 INFORMATION_SCHEMA.COLUMNS 视图本身的 INFORMATION_SCHEMA.COLUMNS 元数据视图之类的内容?

  • 5

该视图的所有列均在Learn -> SQL -> SQL Server -> COLUMNS (Transact-SQL):INFORMATION_SCHEMA.COLUMNS中列出:

在此输入图像描述

COLUMN_NAME数据类型为nvarchar(128):

在此输入图像描述

但没有关于此专栏的更多元数据。它有哪种排序规则?

该列所有属性的文档在哪里:

  • 在微软网站上?

  • 或者也许在某些 SQL Server 菜单本身中?我有服务器管理工​​作室。使用 MySQL 数据库上的 DBeaver,您可以通过右键单击来检查任何视图或表的属性,以便您可以看到所有列属性。但MS SQL Server没有这个。

  • 或者怎样才能要求查看INFORMATION_SCHEMA.COLUMNS风景INFORMATION_SCHEMA.COLUMNS呢?就像是:

    select * from INFORMATION_SCHEMA.COLUMNS where c.TABLE_SCHEMA = 
    'INFORMATION_SCHEMA' and c.TABLE_NAME = 'COLUMNS'
    
sql-server
  • 2 个回答
  • 43 Views
Martin Hope
questionto42standswithUkraine
Asked: 2022-08-25 11:07:07 +0800 CST

为什么使用 Python 的 openpyxl 模块写入几 MB 的工作簿会占用千兆字节的 RAM?

  • 0

我在旧服务器上发现了一个旧代码,该代码使用 openpyxl 从大约 20 列和 >60K 行的数据集中逐项写入 Excel 文件。它通过自己填充每个单元格来做到这一点(缓慢的方式,但也不那么慢,因为整个事情在几分钟后完成,并且单元格的格式):

cell = ws.cell('%s%s' % (col_idx, i + 3))
cell.value = unicode(value).encode("utf-8")
get_style(cell, "content", column_colors[col_id])

在大约 59K 行时,它崩溃了,控制台打印:

Killed

日志显示:

Received SIGTERM, shutting down.

SIGTERM 提示内存太少,以便服务器“从外部”终止任务。它是一个虚拟机。使用该命令检查内存free表明,通过将该小数据集(服务器上的 20 MB)写入 Excel,所有可用的 3.5 GB 都已被使用。

我在运行时检查了它,发现:500 MB 只是为了配置文件,每 10K 行 700 MB。写入数据集会导致:

需要 60 x 700 + 500 = 4700 MB 可用 RAM,而 VM 只有 3.5 GB。对于输出中这么小的文件,这应该足够了。最后的输出大约是一个 20 MB 的工作簿。输出的 Excel 版本应该是 2007 或 2010,因为它在 Python 2.73 上运行并且使用过时的旧代码。

为什么使用 Python 的 openpyxl 模块写入 20 MB 工作簿会占用千兆字节的 RAM?

python
  • 0 个回答
  • 57 Views
Martin Hope
questionto42standswithUkraine
Asked: 2022-08-25 09:48:11 +0800 CST

如何使用 RegEx 过滤 Google Cloud Platform (GCP) Logs Explorer 查询中的属性

  • 0

使用正则表达式 (RegEx) 作为过滤器在 GCP 日志资源管理器中编写查询:

我需要过滤 query_name 中包含单词 ¨stat" 的任何字符串。

试过无济于事:

logName="projects/my_project/logs/my_env-production"
labels.query_name RLIKE "stat"
logName="projects/my_project/logs/my_env-production"
labels.query_name LIKE "%stat%"
logName="projects/my_project/logs/my_env-production"
labels.query_name="%stat%"

输出No data found在左侧窗格中,输出列表为空。

在此处输入图像描述

google-cloud-platform
  • 0 个回答
  • 67 Views
Martin Hope
questionto42standswithUkraine
Asked: 2022-04-15 11:09:17 +0800 CST

运行“htop”和“错误打开终端:alacritty”时,Alacritty 抛出“E558:在 terminfo 中找不到终端条目”。用 vim 打开文件时

  • 0

错误

在 terminfo 中找不到终端条目

和

错误打开终端:alacritty

当我ssh像这样在旧版服务器上发生这种情况时:

ssh MY_USER@MY_SERVER

并使用 Alacritty 打开带有vi MY_TEXT_FILE.

以下只是一个警告,它不会阻止我在 vim 中使用该文件,而是在我查找 vim 文件时以这些行开头:

E558: Terminal entry not found in terminfo
'alacritty' not known. Available builtin terminals are:
    builtin_amiga
    builtin_beos-ansi
    builtin_ansi
    builtin_pcansi
    builtin_win32
    builtin_vt320
    builtin_vt52
    builtin_xterm
    builtin_iris-ansi
    builtin_debug
    builtin_dumb
defaulting to 'ansi'

另一个错误Error opening terminal: alacritty.更糟糕,因为您无法运行某些命令,而我碰巧htop看到了所有的 pid。

这两个错误很可能出现在同一件事上。如何摆脱它们?

terminal
  • 1 个回答
  • 537 Views
Martin Hope
questionto42standswithUkraine
Asked: 2022-04-15 06:35:02 +0800 CST

一次选择 Grafana 时间序列图表中的所有标签,而不是“Ctrl+单击”——选择每个标签直到标记完整列表?

  • 1

在 Grafana 的时间序列图中,我尝试标记一堆标签,以便显示它们的所有曲线。

默认情况下,我在图表中只得到四个标签的曲线,但我有几十个标签,我不想用鼠标标记所有东西,这需要太多时间和精力。

这个想法很可能是选择太多曲线会让你迷失在线条中。但在这种情况下,图表是关于发现异常值、强烈的变化和趋势,或者只是高数字。您可以将鼠标悬停在任何可能引起您注意的曲线上,仅此而已。因此,一张图中有 80 条曲线是没有问题的。

过滤器只是缩小列表,而不是标记其中的所有标签。我可以使用它来正则表达式检查具有 2 位数秒持续时间的查询和 query_name 上的一些其他过滤器。

在此处输入图像描述

然而,我只想一次性查看所有标签的曲线,而不仅仅是单击以下内容:

在此处输入图像描述

有什么诀窍可以完成这项工作吗?甚至可以使用 Grafana Dashboard 代码将作业标记为硬编码列表?或者是否有捷径或其他技巧来选择所有?

grafana
  • 1 个回答
  • 136 Views
Martin Hope
questionto42standswithUkraine
Asked: 2022-04-05 10:18:59 +0800 CST

“字段名称”的下拉菜单不显示在 GCP LBM 菜单“创建日志指标”中记录的 log_struct() 记录的 jsonPayload,尽管日志资源管理器中的日志

  • 0

我需要 Google Cloud Platform 上的度量类型“分布”的 LBM,以便一次性制作具有许多标签的计数或持续时间等值的时间序列图表。

示例:对于数据工作流中的 10 个不同步骤,一天中的计数和持续时间记录在字典中,并使用 gcloud logging 记录为 jsonPayload log_struct()。

虽然我在日志资源管理器中查看一个月时看到记录的事件,但我无法在下拉菜单中选择任何 jsonPayload 项来从中创建所需的基于日志的指标 (LBM),以便我可以在 Graphana 中选择它们显示图表。

在此处输入图像描述

在这个下拉菜单中,我期待我在云函数运行期间记录的键值对,但我无法选择记录的任何内容,我只能看到其他 jsonPayload 系统条目。这就是日志的样子。

在此处输入图像描述

旁注:我使用中间分支保存 jsonPayload,因为子项位于下拉列表中的一个中间分支下,例如 jsonPayload.json_metadata.rows_count 而不是 jsonPayload.rows_count。这使得 Python 日志记录的内容更加清晰。我不认为这是一个问题,但你永远不会知道。我在下拉菜单中找不到这个中间分支及其子项,因此我无法制作所需的 LBM。如何获得“字段名称”的完整下拉菜单?

logging google-cloud-platform metrics
  • 1 个回答
  • 28 Views
Martin Hope
questionto42standswithUkraine
Asked: 2022-02-10 03:24:19 +0800 CST

在 GCP 中创建基于日志的指标 (LBM) 所需的 Python 谷歌云函数日志记录的 jsonPayload(结构化日志记录)输出

  • 3

我需要jsonPayload在 Google Cloud Function 的日志中,而不是textPayload. 我的目标是使用字典的键作为基于日志的度量的标签(请参阅基于日志的度量标签),以便可以在 Grafana 中解决这些问题。

我正在使用 Python 的logging模块,但如果需要,我也可以切换到其他模块。

我需要在日志中作为输出:

jsonPayload: `{'key1':value1, 'key2':value2}`

但是我得到了一个textPayload输出,整个下一行是一个字符串:

"2022-02-08 15:43:32,460 [INFO]: {"key1": value1, "key2": value2}"

日志中的真实示例,在中间,您会看到textPayload:

在此处输入图像描述

图片作为文字:

{
insertId: "000000-1b431ffd-e42d-4f83-xyz"
labels: {1}
logName: "projects/MY_PROJECT/logs/cloudfunctions.googleapis.com%2Fcloud-functions"
receiveTimestamp: "2022-02-08T15:43:41.808217166Z"
resource: {2}
textPayload: "2022-02-08 15:43:32,460 [INFO]: {"json_metadata": {"countrows": 736203, "countcolumns": 6, "size": 48261360, "gcs_stamp": "2022-02-08 15:43:32.451000+00:00", "python_stamp": "2022-02-08 15:43:31.055538"}}"
timestamp: "2022-02-08T15:43:32.460Z"
trace: "projects/MY_PROJECT/traces/dd97759176248586a3d3xyz"
}

第一次尝试

从https://cloud.google.com/logging/docs/structured-logging阅读:

在 Cloud Logging 中,结构化日志是指使用 jsonPayload 字段向其负载添加结构的日志条目。结构化日志记录适用于用户编写的日志。

在编写结构化日志之后,我尝试获取此“结构化日志记录”

logging.info(json.dumps(json_for_gcp_lbm))

但无济于事。

进一步在链接中:有一个来自 GCP 的内置 Logging 代理,它使用fluentd关于 Logging 代理似乎仅适用于 Google Kubernetes Engine 或 App Engine,而不是 Google Cloud Function:

如果您使用的是 Google Kubernetes Engine 或 App Engine 柔性环境,则可以将结构化日志作为 JSON 对象写入单行序列化到 stdout 或 stderr。然后,Logging 代理将结构化日志作为 LogEntry 结构的 jsonPayload 发送到 Cloud Logging。

我怎样才能得到jsonPayload这个输出?

logging python google-cloud-platform google-cloud-functions
  • 1 个回答
  • 1258 Views
Martin Hope
questionto42standswithUkraine
Asked: 2022-02-04 15:23:33 +0800 CST

谷歌云功能警告“OpenBLAS 警告 - 无法确定此系统上的 L2 缓存大小”

  • 0

我收到警告

OpenBLAS 警告 - 无法确定此系统上的 L2 缓存大小,假设为 256k

在 Cloud Function 的“LOGS”选项卡的日志中。

在AppEngine 警告 - OpenBLAS WARNING - could not determine the L2 cache size on this system上已经有关于 Stack Overflow 的 Q/A ,但它不要求 Google Cloud 功能,仅适用于 Google App Engine。

我想知道如何在 Google Cloud Function 中消除此警告,以及我是否应该关心?

  • 无论如何这只是一个警告,而且相当繁重的云函数(有大量计算 + 节省 50 MB csv、700 MB 所需 RAM、1 GB 分配、540 秒超时时间)无论如何都会运行。什么都不做可能是公认的答案。
  • 也许我可以在设置中的某处找到 L2 缓存大小,这里指的是哪个系统?
google-cloud-platform disk-cache warning google-cloud-functions
  • 1 个回答
  • 1710 Views
Martin Hope
questionto42standswithUkraine
Asked: 2022-02-01 09:32:39 +0800 CST

将 csv 从 CF 写入存储桶时:'with open(filepath, "w") as MY_CSV:' 导致 "FileNotFoundError: [Errno 2] No such file or directory:"

  • 1

FileNotFoundError: [Errno 2] No such file or directory当我尝试使用循环数据批次的 csv 写入器将 csv 文件写入存储桶时,出现此错误。围绕该错误对 Cloud Function 日志的完整洞察:


File "/workspace/main.py", line 299, in write_to_csv_file with
open(filepath, "w") as outcsv: FileNotFoundError: [Errno 2] No such
file or directory: 'gs://MY_BUCKET/MY_CSV.csv'

Function execution took 52655 ms, finished with status: 'crash' 

OpenBLAS WARNING - could not determine the L2 cache size on this
system, assuming 256k  ```

而且,虽然这个 bucket_filepath 肯定存在:我可以上传一个空的虚拟文件并获取它的“gsutils URI”(右键单击文件右侧的三个点),并且 bucket_filepath 看起来相同:'gs://MY_BUCKET/MY_CSV.csv'.

我检查了保存一个虚拟的熊猫数据框,而不是使用pd.to_csv它,它使用相同的 bucket_filepath (!)。

因此,必须有另一个原因,可能是作者不被接受,或者with statement打开文件。

引发错误的代码如下。它与在本地服务器上的正常 cron 作业中在 Google Cloud Function 之外工作的代码相同。我在抛出错误的行周围添加了两个调试打印,print("Right after opening the file ...")不再显示。还显示了为每个批次调用的子函数query_execute_batch(),write_to_csv_file()但这里可能不是问题,因为在写入打开 csv 文件时,错误已经在一开始就发生了。

requirements.txt(然后作为模块导入):

SQLAlchemy>=1.4.2
google-cloud-storage>=1.16.1
mysqlclient==2.1.0
pandas==1.2.3
fsspec==2021.11.1
gcsfs==2021.11.1
unicodecsv==0.14.1

从main.py:

def query_execute_batch(connection):
    """Function for reading data from the query result into batches
    :yield: each result in a loop is a batch of the query result
    """
    results = execute_select_batch(connection, SQL_QUERY)
    print(f"len(results): {len(results)}")
    for result in results:
        yield result

def write_to_csv_file(connection, filepath):
    """Write the data in a loop over batches into a csv.
    This is done in batches since the query from the database is huge.
    :param connection: mysqldb connection to DB
    :param filepath: path to csv file to write data
    returns: metadata on rows and time
    """
    countrows = 0
    print("Right before opening the file ...")    
    with open(filepath, "w") as outcsv:
        print("Right after opening the file ...")        
        writer = csv.DictWriter(
            outcsv,
            fieldnames=FIELDNAMES,
            extrasaction="ignore",
            delimiter="|",
            lineterminator="\n",
        )
        # write header according to fieldnames
        writer.writeheader()

        for batch in query_execute_batch(connection):
            writer.writerows(batch)
            countrows += len(batch)
        datetime_now_save = datetime.now()
    return countrows, datetime_now_save

请注意,为了使上述脚本正常工作,我导入gcsfs了这使得存储桶可读写。否则我可能需要一个谷歌云存储对象,例如:

storage_client = storage.Client()
bucket = storage_client.bucket(BUCKET_NAME)

然后使该存储桶中的文件具有更多功能,但这不是这里的目的。

在下面的pd.to_csv代码中,它使用虚拟 SQL 查询的输出SELECT 1作为数据帧的输入。这可以保存到同一个bucket_filepath,当然原因可能不仅仅是pd.to_csv()这样,而且数据集是一个虚拟的,而不是来自一个巨大的SELECT query. 或者还有其他原因,我只是猜测。

if records is not None:
    df = pd.DataFrame(records.fetchall())
    df.columns = records.keys()
    df.to_csv(filepath,
        index=False,
    )
    datetime_now_save = datetime.now()
    countrows = df.shape[0]

我想使用 csv 编写器有机会使用 unicodecsv 模块编写 unicode 并有机会使用批处理。

我可能愿意更改为 pandas 中的批处理(loop + appendmode 或chunksize),例如将大型 Pandas Dataframes to CSV file in chunks以摆脱此存储桶文件路径问题,但我宁愿使用现成的代码(切勿触摸正在运行的系统)。

如何使用 csv 编写器完成该 csv 的保存,以便它可以在write模式 =的存储桶中打开一个新文件with open(filepath, "w") as outcsv:?

给定的函数write_to_csv_file()只是云函数的一小部分,它使用了广泛的函数和级联函数。我不能在这里展示整个可重现的案例,希望可以通过经验或更简单的例子来回答。

filesystems google-cloud-platform google-cloud-functions
  • 1 个回答
  • 910 Views
Martin Hope
questionto42standswithUkraine
Asked: 2022-01-21 03:57:20 +0800 CST

如何在 Google Cloud Storage 存储桶中保存选定的 csv 文件后触发事件

  • 1

尝试制作同步管道时,我需要在将 csv 文件保存在 Google Cloud Storage 中后从 Google Cloud Storage 复制它。复制作业不必在保存后立即触发,它也可以至少在某个时间范围内发生。在文件保存之前可能不会发生。因此,触发事件或 cronjob 都是可能的,或者您可能会提出其他建议。

保存在 Google Cloud Storage 中后,如何触发复制所选 csv 文件?我可以使用云功能来完成复制工作还是有其他方法?

files google-cloud-platform copy google-cloud-storage
  • 1 个回答
  • 596 Views
Martin Hope
questionto42standswithUkraine
Asked: 2022-01-21 02:51:20 +0800 CST

仅将 Google Cloud Storage 存储桶中文件的元数据读取到 Python 中的 Cloud Function 中(不加载文件或其数据!)

  • 0

我需要Cloud Storage for Firebase 之类的东西:下载所有文件的元数据,只是不是在 Angular 中,而是在 Python 中,只是为了选择的文件。

目的是在云函数完成语句时返回此信息,return或者在文件保存在 Google 存储桶中后立即在云函数运行期间记录它。有了这些信息,可以在给定的时间戳之后开始另一个作业。管道是同步的。

我发现了关于将文件或其数据加载到云函数中的 Q/A

  • 使用/tmp目录,例如通过 Cloud Functions 从云存储读取数据
  • 或使用 storage.Client() 或 pandas df.read_csv() 加载数据(而不是文件),例如如何将文件从谷歌云存储加载到谷歌云功能

从外部文件中将数据统计信息提取到正在运行的 Cloud Function 中。

由于我不想随时将大文件或其数据保存在内存中以获取一些元数据,因此我只想从存储在 Google Storage 存储桶中的该文件中下载元数据,即时间戳和大小。

如何仅将 Google Cloud Storage 存储桶中的 csv 文件的元数据提取到 Google Cloud Function?

python google-cloud-storage google-cloud-functions metadata
  • 1 个回答
  • 674 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve