Improved Gitea probing.
This commit is contained in:
parent
0f9e3c4ae8
commit
066203eae1
4 changed files with 15 additions and 10 deletions
|
@ -151,14 +151,16 @@ public class Prober
|
||||||
logger.info("== Probing Gitea.");
|
logger.info("== Probing Gitea.");
|
||||||
String httpLogs = configuration.getProbeHttpAccessLogSource();
|
String httpLogs = configuration.getProbeHttpAccessLogSource();
|
||||||
logger.info("httpLogs=[{}]", httpLogs);
|
logger.info("httpLogs=[{}]", httpLogs);
|
||||||
|
String httpAccessLogRegex = configuration.getProbeHttpAccessLogPattern();
|
||||||
|
logger.info("httpAccessPattern=[{}]", httpAccessLogRegex);
|
||||||
File dataDirectory = configuration.getAsFile("conf.probe.gitea.data");
|
File dataDirectory = configuration.getAsFile("conf.probe.gitea.data");
|
||||||
logger.info("dataPath=[{}]", dataDirectory);
|
logger.info("dataPath=[{}]", dataDirectory);
|
||||||
String apiURL = configuration.get("conf.probe.gitea.api.url");
|
String apiURL = configuration.get("conf.probe.gitea.api.url");
|
||||||
logger.info("apiURL=[{}]", apiURL);
|
logger.info("apiURL=[{}]", apiURL);
|
||||||
String apiToken = configuration.get("conf.probe.gitea.api.token");
|
String apiToken = configuration.get("conf.probe.gitea.api.token");
|
||||||
logger.info("apiToken=[{}]", apiToken);
|
logger.info("apiToken=[{}]", apiToken == null ? "null" : "************************");
|
||||||
|
|
||||||
PathCounters metrics = GiteaProber.probe(FilesUtils.searchByWildcard(httpLogs), null, apiURL, apiToken, dataDirectory);
|
PathCounters metrics = GiteaProber.probe(FilesUtils.searchByWildcard(httpLogs), httpAccessLogRegex, apiURL, apiToken, dataDirectory);
|
||||||
counters.putAll(metrics);
|
counters.putAll(metrics);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -65,7 +65,6 @@ public class GiteaAPI
|
||||||
|
|
||||||
//
|
//
|
||||||
json = IOUtils.toString(new URL(url + "/api/v1/repos/search?limit=100000&token=" + token), Charset.defaultCharset());
|
json = IOUtils.toString(new URL(url + "/api/v1/repos/search?limit=100000&token=" + token), Charset.defaultCharset());
|
||||||
System.out.println(json);
|
|
||||||
this.repositories = (JSONArray) ((JSONObject) (new JSONParser().parse(json))).get("data");
|
this.repositories = (JSONArray) ((JSONObject) (new JSONParser().parse(json))).get("data");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -82,11 +82,13 @@ public class GiteaProber
|
||||||
// metrics.service.files.count
|
// metrics.service.files.count
|
||||||
result.putAll(DatafilesProber.probe(dataPath));
|
result.putAll(DatafilesProber.probe(dataPath));
|
||||||
|
|
||||||
|
//
|
||||||
|
System.out.println("Probing GiteaAPI [" + apiURL + "]");
|
||||||
if (!StringUtils.isBlank(apiURL) && (!StringUtils.isBlank(apiToken)))
|
if (!StringUtils.isBlank(apiURL) && (!StringUtils.isBlank(apiToken)))
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
GiteaAPI gitea = new GiteaAPI("https://forge.devinsy.fr/", "6fd97c63c25cabf67ff90731ee79ab4568be89b0");
|
GiteaAPI gitea = new GiteaAPI(apiURL, apiToken);
|
||||||
|
|
||||||
// metrics.service.accounts
|
// metrics.service.accounts
|
||||||
// metrics.service.accounts.active
|
// metrics.service.accounts.active
|
||||||
|
@ -110,6 +112,12 @@ public class GiteaProber
|
||||||
result.set(gitea.getPrivateRepositoryCount(), "metrics.forge.repositories.private");
|
result.set(gitea.getPrivateRepositoryCount(), "metrics.forge.repositories.private");
|
||||||
result.set(gitea.getForkRepositoryCount(), "metrics.forge.repositories.forks");
|
result.set(gitea.getForkRepositoryCount(), "metrics.forge.repositories.forks");
|
||||||
result.set(gitea.getMirrorRepositoryCount(), "metrics.forge.repositories.mirrors");
|
result.set(gitea.getMirrorRepositoryCount(), "metrics.forge.repositories.mirrors");
|
||||||
|
|
||||||
|
// metrics.issues.count.* =
|
||||||
|
// metrics.issues.issuers.*=
|
||||||
|
// metrics.issues.created.* =
|
||||||
|
// metrics.issues.closed.* =
|
||||||
|
|
||||||
}
|
}
|
||||||
catch (IOException | ParseException exception)
|
catch (IOException | ParseException exception)
|
||||||
{
|
{
|
||||||
|
@ -273,7 +281,6 @@ public class GiteaProber
|
||||||
// metrics.service.users.ipv6
|
// metrics.service.users.ipv6
|
||||||
if ((!log.isBot()) && (USE_PATTERN.matcher(log.getRequest()).matches()))
|
if ((!log.isBot()) && (USE_PATTERN.matcher(log.getRequest()).matches()))
|
||||||
{
|
{
|
||||||
System.out.println(log.toStringLog());
|
|
||||||
String key = String.format("%s---%s", log.getIp(), log.getUserAgent());
|
String key = String.format("%s---%s", log.getIp(), log.getUserAgent());
|
||||||
|
|
||||||
users.put(key, year, yearMonth, yearWeek, date);
|
users.put(key, year, yearMonth, yearWeek, date);
|
||||||
|
|
|
@ -24,7 +24,6 @@ import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
import fr.devinsy.statoolinfos.core.DatabaseConfig;
|
import fr.devinsy.statoolinfos.core.DatabaseConfig;
|
||||||
import fr.devinsy.statoolinfos.core.StatoolInfosException;
|
|
||||||
import fr.devinsy.statoolinfos.metrics.PathCounters;
|
import fr.devinsy.statoolinfos.metrics.PathCounters;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -44,13 +43,11 @@ public class DatabaseProber
|
||||||
/**
|
/**
|
||||||
* Probe.
|
* Probe.
|
||||||
*
|
*
|
||||||
* @param directory
|
* @param config
|
||||||
* the directory
|
* the config
|
||||||
* @return the path counters
|
* @return the path counters
|
||||||
* @throws IOException
|
* @throws IOException
|
||||||
* Signals that an I/O exception has occurred.
|
* Signals that an I/O exception has occurred.
|
||||||
* @throws StatoolInfosException
|
|
||||||
* the statool infos exception
|
|
||||||
*/
|
*/
|
||||||
public static PathCounters probe(final DatabaseConfig config) throws IOException
|
public static PathCounters probe(final DatabaseConfig config) throws IOException
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue