Skip to content

Instantly share code, notes, and snippets.

View polarnik's full-sized avatar

Smirnov Vyacheslav polarnik

View GitHub Profile
import org.slf4j.Logger;
import org.testcontainers.containers.BindMode;
import org.testcontainers.containers.GenericContainer;
import org.testcontainers.containers.Network;
import org.testcontainers.containers.output.Slf4jLogConsumer;
import org.testcontainers.containers.output.WaitingConsumer;
import org.testcontainers.junit.jupiter.Testcontainers;
import org.testcontainers.utility.DockerImageName;
{
@polarnik
polarnik / do_handleSummary.js
Created September 1, 2024 16:51
k6 functions for sending summary metrics to influxdb
// "https://raw.githubusercontent.com/benc-uk/k6-reporter/main/dist/bundle.js";
//import { htmlReport } from "./ext_k6_reporter.js";
// "../ext/ext_k6-sammary-0.0.2.js"
import { jUnit, textSummary } from "https://jslib.k6.io/k6-summary/0.0.2/index.js";
import { influxLineSummary } from './k6_summary_2_influx_line.js';
import http from 'k6/http';
export function do_handleSummary(data) {
let filteredData = JSON.parse(JSON.stringify(data), function(key, value){
if(key=='cookies')
@polarnik
polarnik / nginx.conf
Created May 3, 2024 07:11
NGinx for InfluxDB 2 and VictoriaMetrics
#user nobody
worker_processes 4;
error_log /var/log/nginx/error.log warn;
events {
worker_connections 1024;
}
http {
@Testcontainers
@Isolated
@Execution(SAME_THREAD)
@Slf4j
@Getter
@Setter
@TestMethodOrder(MethodOrderer.MethodName.class)
@IndicativeSentencesGeneration(separator = " ➡️ ", generator = CostomNameGenerator.class)
public abstract class AbstractTest {
//...
200,browser=chrome,category=sitespeed_board_test,connectivity=cable,db=sitespeed,group=miro_com,origin=pagexray,page=board_small_board,responseCodes=response,summaryType=pageSummary,testName=board_small_board,testtype=firstopen value=344 1693935733386000000
200,browser=chrome,category=sitespeed_board_test,connectivity=cable,db=sitespeed,group=miro_com,origin=pagexray,responseCodes=response,summaryType=summary,testName=board_small_board,testtype=firstopen max=344 1693935733386000000
200,browser=chrome,category=sitespeed_board_test,connectivity=cable,db=sitespeed,group=miro_com,origin=pagexray,responseCodes=response,summaryType=summary,testName=board_small_board,testtype=firstopen mean=344 1693935733386000000
200,browser=chrome,category=sitespeed_board_test,connectivity=cable,db=sitespeed,group=miro_com,origin=pagexray,responseCodes=response,summaryType=summary,testName=board_small_board,testtype=firstopen median=344 1693935733386000000
200,browser=chrome,category=sitespeed_board_test,connectivity=cable,db=site
@polarnik
polarnik / do_handleResponse.js
Created September 18, 2023 08:20
k6.io custom metrics example
import {requestCounter,
requestBodySizeTotal, requestBodySizeTrend,
requestContentLengthTotal, requestContentLengthTrend,
responseCounter,
responseSuccessCounter, responseSuccessRate,
responseSuccessStatusTrend, responseSuccessErrorCodeTrend, responseSuccessDurationTrend,
responseSuccessBodySizeTotal, responseSuccessBodySizeTrend,
responseSuccessContentLengthTotal, responseSuccessContentLengthTrend,
apdexTotal, apdexSatisfied, apdexTolerating, apdexFlustrated,
apdexDuration,
@polarnik
polarnik / browsertime.chrome.Selenium.json
Created August 30, 2023 17:32
sitespeedio/sitespeed.io:29.3.0-plus1 default settings
{
"map_": {},
"options_": {
"prefs": {
"profile.password_manager_enable": false,
"profile.default_content_setting_values.notifications": 2,
"credentials_enable_service": false
},
"args": [
"--no-sandbox",
@polarnik
polarnik / migrate.influxdb2.to.vm.sh
Last active July 10, 2023 17:07
Migrate InfluxDB metrics from InfluxDB2 to VictoriaMetrics
influxd inspect export-lp --bucket-id 5d69c811b871b876 --engine-path /var/lib/influxdb2/engine --output-path /var/lib/influxdb2/ClientMetricsExport.txt
cd /var/lib/influxdb2/
split -d -l 1000 -a 10 ./ClientMetricsExport.txt 1k_lines
files=(1k_lines*)
for ((i=${#files[@]}-1; i>=0; i--)); do
echo "${files[$i]}"
@polarnik
polarnik / nginx.conf
Last active November 15, 2023 17:54
Nginx config for connecting Grafana with InfluxDB (COSR settings problem) with cache (perf improvment)
#user nobody
worker_processes 4;
error_log /var/log/nginx/error.log warn;
events {
worker_connections 1024;
}
http {
@polarnik
polarnik / _src_DebugTest.java
Last active March 11, 2023 12:07
Gatling 3.7 Java-DSL Engine
import io.gatling.app.Gatling;
import org.testng.annotations.Test;
import scala.collection.mutable.HashMap;
@Test(singleThreaded = true)
public class DebugTest {
final private HashMap<String, String> config = new HashMap<>();
{
config.put("gatling.core.directory.resources", IDEPathHelper.resourcesDirectory.toString());